还剩15页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
语言习题⑺C第章函数7一.填空题语言中从函数的形式分可分为无参函数和
1.Co在语言中,一个自定义函数一般由两部分组成,它们是函数首部和
2.Co从用户使用角度看,函数有两种标准函数和
3.o若一个函数不需要形参,则在定义该函数时应使形参表为空或者放置一个标识符
4.o有函数调用函数有个参数
5.funlx+y,y,z,10,funx,y-l;funl已知函数定义},其函数申明的两种写法为
7.C o语言变量的存储类别有,,和
8.Co凡在函数中未指定存储类别的局部变量,其默认的存储类别为
9.o在一个程序中,若要定义一个只允许根源程序文献中所有函数使用的全局变量,则该变量需要定义的存
10.C储类别为语言中,形式参数的缺省存储类型是
11.Co语言中,若为指定函数是内部函数或外部函数,则默认该函数是
12.C二.选择题如下正确的说法是
1.O用户若需要调用标准库函数,调用前必须重新定义A用户能够重新定义标准库函数,如若此,该函数将失去原有定义Bint main{inta
[3]
[4]={l,l3,5,7,2,4,26,8,10,1,3,12};int m;m=10;printfu%d\n5\funca,m;return0;写出下面程序的运行成果
7.o#includestdio.hvoid main{int addint x,int y;int a=l,b=2,xl,x2,x3;xl=adda,b;x2=adda,b;x3=adda,b;%printf d,%d,%d\n”,x I,x2,x3;int addint x,int y{static int z=l;z=x+y+z;returnz;如下程序运行时第一行、第二行、最后一行分别输出为
8.#includestdio.hint subint n{int a;ifn==la=l;else a=n+subn-l;printfn%d\nH,a;returna;int main{int i=5;printfn%d\nH,subi;return0;四.程序填空题如下程序的功效是用函数计算平均成绩
1.average#includestdio.hfloat averagefloatarray[],intn{float sum=0,ave;int i;fori=0;in;i++sum+=array|i|;ave=【1】;【2】;int main{float score
[10],aver;int i;fori=0;i10;i++scanfu%f\score[i];aver=average【3】;printfCcaver=%f\n,\aver;return0;}函数丫伯的功效是从字符串$中删除字符的在主函数中输入要删除的字符,并将删除
2.1€11132[§[],2@10后的字符输出#includestdio.hvoid funchars[],char c;{int ij;,;for i=0,j=0s[i]!=\y i++if[11s[j++]=s[i];;sU]=\Oint main{char str
[80]=adadfeeafard,ch;scanf%c”,ch;fun【2】,ch;【3】;return0;}下面程序用“折半查找法”从有个数的数组中对核心字查找,若找到,返回其下标值,否则返
3.10a m回请填空-1,#includestdio.hint searchint a[101,int m{int x1=0,x2=9,mid;while xl=x2{mid=xl+x2/2;】;if ma[mid][1】;else ifma[mid][2else returnmid;return-1;int main{int a
[10]={1,4,6,8,12,44,55,67,89,98},key,k;printfHplease input:*;scanfn%dH,key;k=【3】;ifk==-l printfncan,t find!\nH;else printfHpos=%d\n,k;return0;下面程序的功效是将一个字符串中元音字母复制到另一个字符串,然后输出,请填空
4.#include stdio.hint main{_[______!______Lchar str
[80],c
[80];printfHinput string:;【2】cpystr,c;printfnThe vowelletters are:%s\nn,c;return0;void cpychars[],char c[]{int ij;for i=O,j=O;s[i]!=\O;i++ifs[i]==,al|s[i]==W||s[i]==,eJ|s[i]==K||s[i]==T||s[i]==T||s[i]==3|s[i]==O||s[i]==U||s[i]==U;r3];j++
[4]下面程序的功效是给出年、月、日,计算该日是该年的第几天,请填空
5.#include stdio.hint main{int sum_dayint month,int day;int leapint year;int year,month,day,days;printfninput dateyear,month,day:11;scanfn%d,%d,%dn,year,month,day;printf%d/%d/%d n,year,month,day;day s=sum_day month,day;ifleapyearmonth=3【】1printfnis the%dth dayin thisyear.\nH,days;return0;int sum_dayint month,int day{int day_tab[l3]={0,31,28,31,30,31,30,31,31,30,31,30,31;int i;for i=l;imonth;i++
[2]];returnday;int leapint year{intleap;if【3】leap二1;else leap=0;returnleap;)系统不允许用户重新定义标准库函数C)用户若需要使用标准库函数,调用前无须使用预处理命令将该函数所在的头文献包括编译,系统会自D动调用如下正确的函数定义是
2.oB intfunint x,y{z=x+y;return z;}{intz;return3;}A double funint x,int y;C doublefun x,y Ddoublefunint x,inty{int x,y;double z;{double z;z=x+y;z=x+y;return z;}return z;}语言中,简单变量做实参和形参时,如下正确的说法是
3.C)实参和与其对应的形参各占用独立的存储单元A)实参和与其对应的形参共占用一个存储单元B)只有当实参和与其对应的形参同名时才共占用相同的存储单元C)形参时虚拟的,不占用存储单元D语言要求,简单变量做实参时,它和对应的形参之间的数据传递方式是
4.C)地址传递A)单向值传递B)有实参传给形参,再由形参传给实参C)由用户指定传递方式D语言要求,函数返回值的类型是由决定的
5.C)语句中的体现式类型)调用该函数时的主调函数类型A returnB)调用该函数时由系统暂时)在定义函数时所指定的函数类型C D如下正确的描述是
6.o)函数的定义能够嵌套,但函数的调用不能够嵌套A)函数的定义不能够嵌套,但函数的调用能够嵌套B)函数的定义和函数的调用均不能够嵌套C)函数的定义和函数的调用均能够嵌套D若用数组名作为函数调用的实参,传递给形参的是
7.o)数组的首地址)数组中第一个元素的值A B)数组中的所有元素的值)数组元素的个数C D
8.假如在一个函数中的复合语句中定义了一个变量,则该变量_______________o)只在该复合语句中有定义)在该函数中有定义A B)在本程序范围内有定义)为非法变量C D
9.如下不正确的说法是_____________o)在不一样函数中能够使用相同名字的变量A)形式参数是局部变量B)在函数内定义的变量只在本函数范围内有定义C)在函数内的复合语句中定义的变量在本函数范围内有定义D
10.有关函数申明,如下不正确的说法是_____________o)假如函数定义出目前函数调用之前,能够无须加函数原型申明A)假如在所有函数定义之前,在函数外部已做了申明,则各个主调函数无须再做函数原型申明B)函数在调用之前,一定要申明函数原型,确保编译系统进行全面的调用检查C)标准库不需要函数原型申明D如下函数的调用中实参的个数是
11.funcofuncexpl,exp2,exp3,exp4,exp5;A1B2C3D
512.有如下程序,该程序的输出成果是_____________oint funcint a,int b{return a+b;}int main{int x=2,y=5,z=8,r;r=funcfuncx,y,z;printf%d\nj;return0;}A12B13C14D15如下程序运行的成果是
13.void funint a,int b,int c{a=456;b=567;c=678;}int main{intx=10,y=20,z=30;funx,y,z;%printf“d,%d,%d”,x,y,z;A30,20,10B10,20,30C456,567,678D678,567,456如下程序运行的成果是
14.ovoid funint b{ifbOfunb-l;%printf d”,b;}int main{int a=5;funa;return0;}A54321B012345C12345D543210函数定义如下,执行语句后,的值应为
15.f sum=f5+f3;sumint fint m{static int i=0;int s=0;for;i=m;i++s+=i;return s;}A21B16C15D8如下程序运行的成果是
16.ovoid reverseinta[],intn{int i,t;fori=0;in/2;i++{t=a[i];a[i]=a[n-l-i];a[n-l-i]=t;}{int b
[10]={l,2,3,4,5,6,7,8,9,10};int i,s=O;reverseb,8;fori=6;i10;i++s+=b[i];printfT%d\n”,s;return0;}A22B10C34D30三.程序阅读题写出下面程序的运行成果
1.O#includestdio.hint a,b;void fun{a=100;b=200;}int main{inta=5,b=7;fun;printfua=%d,b=%d\n,\a,b;return0;}如下程序的第一行的输出成果是是,第二行的输出成果是,第三行的输出成
2.果是,第四行的输出成果是#includestdio.h{inta=5,b=-3,c=-7;printf,,%d,%d,%d\n,\a,b,c;{intb=8;float c=
9.9;%printf“d,%d,%.1f\iT,a,b,c;a=b;{int c=b;printf%d,%d,%d\n”,a,b,c;},printfC%d,%d,%d\n,,,a,b,c;return0;}写出下面程序的运行成果
3.#includestdio.hvoid swap1int c[]{int t;t=c
[0];c
[0]=c[l];c[l]=t;}void swap2int cO,int cl{int t;t=cO;cO=cl;cl=t;}int main{inta
[2]={3,5},b
[2]={3,5};swap1a;swap2b
[0],b[l];printfn%d,%d,%d,%d\nM,a[O],a[l],b[O],b[l];return0;如下程序的输出成果第一行是,第二行是,第三行是
4.#includestdio.hint n=l;void func{static intx=4;inty=10;x=x+2;n=n+10;y=y+n;printfHFUNC:x=%d y=%d n=%d\nn,x,y,n;}void main{intx=5,y;y=n;printf nMAIN:x=%d y=%d n=%d\nn,x,y,n;func;printfnMAIN:n=%d\n;n;写出下面程序的运行成果
5.o#includestdio.hint max_valueint array[]
[4],int i{int j,max;max=array[i][O];forj=0;j4;j++if maxarray[i][j]max=array[i][j];returnmax;int main{inta
[3]
[4]={{1,3,5,7},{2,4,6,8},{12,15,56,32}},i;for i=0;i3;i++printfu%d\n,,,max_valuea i;return0;}写出下面程序的运行成果
6.o#includestdio.hint funcint array!]
[4],intm{inti,j,k=O;fori=0;i3;i++forj=0;j4;j++ifarray[i][j]m k=k+array[i][j];。
个人认证
优秀文档
获得点赞 0