C语言知识点考试复习题库.docx
《C语言知识点考试复习题库.docx》由会员分享,可在线阅读,更多相关《C语言知识点考试复习题库.docx(111页珍藏版)》请在课桌文档上搜索。
1、IC语言规定:简单变量作为实参时,它和对应形参之间的数据传递方式是(B)oA.地址传递B.单向值传递C.由实参传给形参,再由形参传回给实参D.由用户指定的传递方式2以下程序的输出结果是Ao#includevoidmain()intk=4,m=l,p;p=func(k,m);printf(%d,p);p=func(k,m);printf(%dn,p);)inta,b;func(a,b)staticintm=0,i=2;i+=m+l;m=i+a+b;return(m);)A)8,17B)8,16C)8,20D)8,83下列程序执行后输出的结果是D#includef(inta)intb=0;stat
2、icc=3:a=c+,b+;return(a);voidmain()inta=2,i,k;for(i=0;ik=f(a+);printf(,%dn,k);A)3B)0C)5D)44若有以下定义:Dchara;intb;floatc;doubled;则表达式a*b+d-c值的类型为A)floatB)intC)charD)double5以下程序的输出结果是Dmain()inta=-l,b=4,k;k=(+a0)&!(b-=0);printf(%d%d%dn,k,a,b);A)104B)103C)003D)0046D若有定义:intx,yjchara,b,c;并有以下输入数据(此处“CR”代表换行符
3、,/u代表空格):lu2AuBuC则能给X赋整数1,给y赋整数2,给a赋字符A,给b赋字符B,给c赋字符C的正确程序段是A) scanf(x=%dy+%d,&x,&y);a=getchar();b=getchar();c=getchar();B) scanf(%d%d”,&x,&y);a=getchar();b=getchar();c=getchar();C) scanf(%d%d%c%c%c,&x,&y,&a,&b,&c);D) scanf(%d%d%c%c%c%c%c%c,&x,&y,&a,&a,&b,&b,&c,&c);7有以下程序Bmain()i11ti=10,j=l;pritf(%d
4、,%dn,i-,+j);)执行后输出的结果是A)9,2B)10,2C)9,1D)10,18有以下程序Cmain()intm=0256,n=256;printf(l%o%on”,m,n);以八进制输出无符号整数程序运行后的输出结果是。A)02560400B)0256256C)256400D)4004009下面程序的输出是(八)#includestdio.hvoidmain()(intx=100,a=10,b=20,okl=5,ok2=0;if(a)if(b!=15)if(!okl)x=1;elseif(ok2)x=10;x=-l;printf(%dn,x);)A)-1B)0C)1D)不确定的值1
5、0以下程序的输出为Bomain()inta=20,b=30,c=40;b=c;c=a;printf(a=%d,b=%d,c=%d,a,b,c);)A)a=20,b=30,c=20B)a=20,b=40,c=20C)a=30,b=40,c=20D)a=30,b=40,c=30H阅读下面的程序:A#includestdio.hvoidmain()/Iintk=-3;if(kx)y=0.0;elseif(10.0x)y=1.0x;elsey=l.O;printf(%fn,y);该程序的输出结果是A. 0.000000B. 0.250000C. 0.500000D. 1.00000015循环语句Bfo
6、r(x=0,y=0;(y!=l)(x4);x+)循环体;的循环体执行次数是OA)无限次B)不确定次C)4次D)3次16下面程序段的执行结果是C_a=2;b=l;c=2;while(abs2)S;B.if(strcmp(sl,s2)S;C.if(strcmp(s2,sl)0)S;D.if(strcmp(sl,s2)0)S;22下列选项中正确的语句组是DA.chars8;s=,Beijing;B.char*s;s=,Beijing;C.chars8;s=,Beijing,;D.char*s;s=Beijing;23以下程序完成3行3列矩阵的转置,请填空aij=aji#includevoidmain
7、()(i11ta33=l,2,3,4,5,6,7,8,9;inti,j,k;for(i=0;i3;i+)for(j=O;j5)break;while(a);printf(%d,1,y);25分析如下程序,此程序运行时输出结果是:20#includevoidtest(int*x,int*y);voidmain()/Iinta=10,b=20;test(&a,&b);printf(%d,1,a);)voidtest(int*x,int*y)intt;t=*x;*x=*y;*y=t;26分析如下程序,此程序运行时输出结果是:zhang#includeinta;floatb;char*c;UN;voi
8、dmain()(staticUNx=19,83.5,zhang;UN*px;px=&x;printf(r%s,px-c);27以下程序运行后的输出结果是NOoincludevoidmain()(inta=l,b=3,c=5;if(c=a+b)printf(,Yesn);elseprintf(Non);)28生注意:先将源程序文件705.c复制到D盘中操作,操作完成后,将此文件复制回来(覆盖)!要求:补充程序使得程序运行时完成以下功能:用函数调用完成求一个数组1。,0,2,4,5,8,10,12,2,40中的最大元素值要求:通过函数调用实现(计算方法在子函数中,通过主函数调用实现)29考生注意:
9、先将源程序文件IoLC复制到D盘中操作,操作完成后,将此文件复制回来(覆盖)!要求:补充程序使得程序运行时完成以下功能:编写一个程序,向屏幕输出以下信息:Hello!Verygood!30考生注意:先将源程序文件209.c复制到D盘中操作,操作完成后,将此文件复制回来(覆盖)!要求:补充程序使得程序运行时完成以下功能:计算公式:x+lx0y=x*x+20=x2要求:D从键盘输入X的值,根据X的值求y的值2)输出y的值31考生注意:先将源程序文件510.c复制到D盘中操作,操作完成后,将此文件复制回来(覆盖)!要求:补充程序使得程序运行时完成以下功能:编写程序打印如下图形:要求:1)5行的等腰三
10、角形2)每个字符占两列的宽度。答案题号:1分值:2得分:O答案:B试卷:D题号:2分值:2得分:2答案:A试卷:A题号:3分值:2得分:O答案:D试卷:B题号:4分值:2得分:O答案:D试卷:C题号:5分值:2得分:2答案:D试卷:D题号:6分值:2得分:O答案:D试卷:A题号:7分值:2得分:2答案:B试卷:B题号:8分值:2得分:2答案:C试卷:C题号:9分值:2得分:2答案:A试卷:A题号:10分值:2得分:2答案:B试卷:B题号:11分值:2得分:2答案:A试卷:A题号:12分值:2得分:2答案:B试卷:B题号:13分值:2得分:0答案:C试卷:D题号:14分值:2得分:0答案:C试卷
11、:A题号:15分值:2得分:0答案:B试卷:C题号:16分值:2得分:2答案:C试卷:C题号:17分值:2得分:0答案:B试卷:D题号:18分值:2得分:2答案:B试卷:B题号:19分值:2得分:2答案:B试卷:B题号:20分值:2得分:0答案:D试卷:A题号:21分值:2得分:0答案:D试卷:C题号:22分值:2得分:0答案:D试卷:题号:23分值:2得分:0答案:aij=aji试卷:题号:24分值:2得分:2答案:6试卷:6题号:25分值:2得分:2答案:20试卷:20题号:26分值:2得分:2答案:Zhang试卷:zhang题号:27分值:2得分:2答案:No试卷:No1在函数调用过程中
12、,如果函数funA调用了函数fmB,函数funB又调用了函数fu11A,则(B)A)称为函数的直接递归调用B)称为函数的间接递归调用C)称为函数的循环调用D)C语言中不允许这样的递归调2C语言中,函数值类型的定义可以缺省,此时函数值的隐含类型是BoA)voidB)intC)floatD)double3有如下函数调用语句如n(reel,rec2+rec3,rec4*rec5),该语句中含有的实参个数是AA)3B)4C)5D)有语法错误4有以下程序Bmain()charal=,M,a2=m;printf(%cn,(al,a2);以下叙述中正确的是A)程序输出大写字母MB)程序输出小写字母mC)格式
13、说明符不足,编译出错D)程序运行时产生出错信息5若变量a、il已正确定义,且i已正确赋值,合法的语句是BA)a=lB)+i;C)a=a+=5;D)a=int(i);6如这程序所示,如果运行时,输入18,18,那么b的值为多少?Dvoidmain()/inta,b;scanf(%d,%o,&a,&b);b+=a;printf(%d,b);i/A.36B.34C.输入错误,b的值不确定D.197以下叙述中正确的是DA)输入项可以是一个实型常量,如:scanf(%f,3.5);B)只有格式控制,没有输入项,也能正确输入数据到内存,例如:scanf(a=%d,b=%d);C)当输入一个实型数据时,格式
14、控制部分可以规定小数点后的位数,例如:scanf(M%4.2f,&f);D)当输入数据时,必须指明变量地址,例如:scanf(%f,&f);8若运行时给变量X输入12,则以下程序的运行结果是Amain()intx,y;SCanf(%d,&x);y=x12?x+10:x-12;Printf(dn,y);)A)OB)3C)2D)19阅读以下程序:Bmain()intx;scanf(%d,&x);if(x-100)PrirItf(%dn”,a100);elseprintf(u%dn,a6)printf(%d,n);n-;)该程序的输出结果是A. 987B. 876C. 8765D.9876152.语
15、句WhiIe(!E):中的表达式!E等价于A。A)E=OB)E!=1C)E!=OD)E=116有以下程序#includevoidmain()intx=0,y=3,z=l;while(z-O&+x4)y=y-1;printf(%d,%d,%dn,x,y,z);程序执行后的输出结果是BoA)l,2,0B)l,2,-1C)4,3,-lD)3,-2,-l17以下叙述中正确的是CA. C语言比其他语言高级B. C语言可以不用编译就能被计算机识别执行C. C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D. C语言出现的最晚,具有其他语言的一切优点18以下述叙不正确的是DA.一个C源程序可以由一
16、个或多个函数组成B.一个C源程序必须包含一个main函数C.C程序的基本组成单位是函数D.在C程序中注释说明只能位于一条语句的后面19D在设计程序时,应采纳的原则之一是A.不限制goto语句的使用B.减少或取消注解行C.程序越短越好D.程序结构应有助于读者理解20以下叙述中错误的是CoA.对于double类型数组,不可以直接用数组名对数组进行整体输入或输出B.数组名代表的是数组所占存储区的首地址,其值不可改变C.当程序执行中,数组元素的下标超出所定义的下标范围时,系统将给出“下标越界”的出错信息D.可以通过赋初值的方式确定数组元素的个数21给出以下定义:Ccharx=,abcdefg;char
17、y=7bc7d7ef7gt;则正确的叙述为A.数组X和数组Y等价B.数组X和数组Y的长度相同C.数组X的长度大于数组Y的长度D.数组X的长度小于数组Y的长度22考生已知:intc34;则对数组元素引用正确的是CA. c33B. c0.50C. c1-10D.以上表达都错误23下面程序运行结果是(15)includevoidmain()inta5=2,4,5,6,8;inti,s=O;for(i=0;i5;i+)if(i%2=0)s=s+ai;printf(%d,s);)24下列程序段的输出是_5,2intk,s;for(k=0,s=0;k6)printf(%d,n);n-;该程序的输出结果是A
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 知识点 考试 复习 题库

链接地址:https://www.desk33.com/p-1142657.html