习题集函数Word格式文档下载.docx
《习题集函数Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《习题集函数Word格式文档下载.docx(13页珍藏版)》请在冰豆网上搜索。
main()
{inta=24,b=16,c;
c=abc(a,b);
printf('
%d\n"
c);
intabc(intu,intv)
{intw;
while(v)
{w=u%v;
u=v;
v=w}returnu;
A)6
B)7
C)8
D)9
4.以下程序的输出结果是
#include
"
int
fun(int
x,inty)
{static
m=0,i=2;
i+=m+1;
m=i+x+y;
return
m;
{int
j=4,m=1,k;
k=fun(j,m);
printf("
%d,"
k);
5.以下程序运转后,输出结果是
A)84B)99C)95D)44
intd=1;
fun(intp)
{intd=5;
d+=p++;
printf(“%d”,d);
{inta=3;
fun(a);
d+=a++;
printf(“%d\n”,d);
6.下边函数用来求出两个整数之和,并经过形参传回两数相加之和值,
请填空。
voidadd(intx,inty,[1]z)
{[2]=x+y;
}
7.有以下函数调用语句
func(rec1,rec2+rec3,(rec4,rec5));
该函数调用语句中,含有的实参个数是
A)3B)4C)5D)有语法错
8.有以下程序
intrunc(inta,intb)
{return(a+b);
}main0
{intx=2,y=5,z=8,r;
r=func(func(x,y),z);
printf(“%d\n”,r);
该程序的输出的结果是
A)12B)13C)14D)15
9.有以下程序
longfib(intn)
{if(n>
2)return(fib(n-1)+fib(n-2));
elsereturn
(2);
main0
{printf(“%d\n”,fib(3));
该程序的输出结果是
A)2B)4C)6D)8
10.以下函数用来求出两整数之和,并经过形参将结果传回,请填
空。
voidfunc(intx,inty,[?
]z)
{*z=x+y;
11.以下程序的输出结果是。
voidfun()
{staticinta=0;
a+=2;
printf(“%d”,a);
{intcc;
for(cc=1;
cc<
4;
cc++)fun()
printf(“\n”);
12.以下所列的各函数首部中,正确的选项是
A)voidplay(var:
Integer,varb:
Integer)
B)voidplay(inta,b)
C)voidplay(inta,intb)
D)Subplay(aasinteger,basinteger)13.以下程序的输出结果是
A)0B)29C)31D)无定值
fun(intx,inty,intz)
{z=x*x+y*y;
}main()
{inta=31;
fun(5,2,a);
%d"
a);
14.以下程序的输出结果是
A)1B)2C)3D)4longfun(intn)
{longs;
if(n==1||n==2)s=2;
elses=n-fun(n-1);
{printf("
%ld\n"
fun(3));
15.函数pi的功能是依据以下近似公式求π值:
(π*π)/6=1+1/(2*2)+1/(3*3)+..+1/(n*n)
此刻请你在下边的函数中填空,达成求π的功能。
#include“math.h”
doublepi(longn)
{doubles=0.0;
longi;
for(i=1;
i<
=n;
i++)s=s+?
;
return(sqrt(6*s));
16.在调用函数时,假如实参是简单变量,它与对应形参之间的数据传达方式是
A)地点传达B)单向值传达
C)由实参传给形参,再由形参传回实参D)传达方式由用户指定
17.以下函数值的种类是
fun(floatx)
{floaty;
y=3*x-4;
returny;
A)intB)不确立C)voidD)float
18.设有以下函数:
f(inta)
{intb=0;
staticintc=3;
b++;
c++;
return(a+b+c);
假如在下边的程序中调用该函数,则输出结果是
{inta=2,i;
for(i=0;
3;
i++)printf("
f(a));
A)7B)7C)7D)7
8
9
10
7
11
13
19.以下程序的输出结果是
inta,b;
{a=100;
b=200;
{inta=5,b=7;
fun();
%d%d\n"
a,b);
A)100200B)57C)200100D)75
20.以下程序输出的最后一个值是。
intff(intn)
{staticintf=l;
f=f*n;
returnf;
main(){inti;
for(i=1;
=5;
i++,printf("
ff(i)));
21.以下函数的功能是:
求x的y次方,请填空。
doublefun(doublex,inty)
{inti;
doublez;
for(i=1,z=x;
i<
y;
i++)z=z*?
;
returnz;
22.以下程序的输出结果是
intf()
{staticinti=0;
ints=1;
s+=i;
i++;
returns;
{inti,a=0;
for(i=0;
5;
i++)a+=f();
A)20B)24C)25D)15
23.如有以下程序
include<
stdio.h>
voidf(intn);
{voidf(intn);
f(5);
voidf(intn)
n);
则以下表达中不正确的选项是
A)若只在主函数中对函数f进行说明,则只好在主函数中正确调用
函数f
B)若在主函数前对函数f进行说明,则在主函数和后来的其余函数中都能够正确调用函数f
C)关于以上程序,编译时系统会提示犯错信息:
提示对f函数重复说明
D)函数f无返回值,因此可用void将其种类定义为无值型
24.以下程序的输出的结果是《》
intx=3;
for(i=1;
x;
i++)incre();
incre()
{staticintx=1;
x*=x+1;
%d"
x);
A)33B)22C)26D)25
答案:
1D
2A
3C4【8,17】5A6【int*】【*z】7A8D9B10【int*】11
【246】12C13C1
4A15【1.0/(i*i)】16B17A18A19B20【720】21【x】22D23
C24C