函数习题
1.以下函数值的类型是________。
fun(float x)
{ float y;
y=3*x-4;
return y;
}
A)int B)不确定 C)void D)float
2.有如下函数调用语句:
fun(rec1,rec2+rec3,(rec4,rec5));
该函数调用语句中,含有的实参个数是________。
A)3 B)4 C)5 D)有语法错
3.请在以下程序第一行的填空处填写适当内容,使程序能正确运行。
1
________ (double,double)
main()
{ double x,y;
scanf(\"%lf%lf\
printf(\"%lf\\n\
}
double max(double a,double b)
{return(a>b?a:b);}
对函数进行声明有下列三种形式:
(1)类型名 函数名(类型1 形参1,类型2 形参2,…,类型n (2)类型名 函数名(类型1,类型2,…,类型n);
(3)类型名 函数名();
4.以下程序的输出结果是________。
形参n);
2
t(int x,int y,int cp,int dp)
{ cp=x*x+y*y;
dp=x*x-y*y; }
main()
{ int a=4,b=3,c=5,d=6;
t(a,b,c,d);
printf(\"%d %d \\n\ }
5.有以下函数定义:
void fun(int n,double x) {…}
若以下选项中的变量都已经正确定义且赋值,则对函数fun的正确调用语句是________。
A)fun(int y,double m); B)k=fun(10,12.5);
C)fun(x,n); D)void fun(n,x);
6.有以下程序:
3
int f(int n)
{ if(n= =1) return 1;
else return f(n-1)+1;
}
main()
{ int i,j=0;
for(i=1;i<3;i++) j+=f(i);
printf(\"%d\\n\
}
程序运行后的输出结果是________。
A)4 B) 3 C)2 D)1
7.以下程序运行后,输出结果是________。int d=1;
4
fun (int p)
{
int d=5;
d+=p++;
printf(\"%d\
}
main()
{
int a=3;
fun(a);
d+=a++;
printf(\"%d\\n\
}
5
A)84 B)99 C)95 D)44
8.以下程序的输出结果是________。
int f()
{
static int i=0;
int s=1;
s+=i;
i++;
return s;
}
main()
{
int i,a=0;
6
for(i=0;i<5;i++)
a+=f();
printf(\"%d\\n\
}
A)20 B)24 C)25 D)15
9.在C语句中,形参的默认存储类型是________。
A)auto B)register
C)static D)extern
10.在C语句中,函数的隐含存储类型是________。
A)auto B)static
C)extern D)无存储类别
7