C语言程序设计综合考试试题与答案.docx

上传人:太** 文档编号:86414904 上传时间:2023-04-14 格式:DOCX 页数:24 大小:30.89KB
返回 下载 相关 举报
C语言程序设计综合考试试题与答案.docx_第1页
第1页 / 共24页
C语言程序设计综合考试试题与答案.docx_第2页
第2页 / 共24页
点击查看更多>>
资源描述

《C语言程序设计综合考试试题与答案.docx》由会员分享,可在线阅读,更多相关《C语言程序设计综合考试试题与答案.docx(24页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、C语言程序设计综合考试试题与答案1、以下表达中正确的选项是()A)C程序中的注释只能出现在程序的开始位置和语句的后面B)C程序书写格式严格,要求一行内只能写一个语句C)C程序书写格式自由,一个语句可以写在多行上(正确答案)D)用C语言编写的程序只能放在一个程序文件中2、以下表达中正确的选项是()A)C程序的基本组成单位是语句B) C程序中的每一行只能写一条语句0简单C语句必须以分号结束(正确答案)D)C语句必须在一行内写完3、计算机能直接执行的程序是()A)源程序B)目标程序C)汇编程序D)可执行程序(正确答案)4、以下C语言用户标识符中,不合法的是()_1A) AaBca_bB) a-b(正

2、确答案)5、以下选项中不合法的标识符是()A)printB) FORC)&a (正确答案)D) 00cout= a &ch ch二ch,a,+ A;a+; cout)cout37、有以下程序#include (正确答案) int f (int x, int y) return (y-x)x); main () int a=3, b=4, c=5, d;d=f (f (a, b), f (a, c);cout程序运行后的输出结果是(B)A) 10 B)9 C)8 D)738、有以下程序ttinclude (正确答案) int fun (int x,int y) if (xy) return (x

3、); else return(x+y)/2);main () int a=4, b=5, c=6;cout程序运行后的输出结果是(B)A) 3 B)6 C)8 D)1239、有以下程序ttinclude (正确答案)fun (int x) if (x/20) fun(x/2);coutmain () fun(6);cout程序运行后的输出结果是【136】o40、有以下程序ttinclude (正确答案)void fun(int p) int d=2;p=d+; coutmain () int a=l;fun (a); cout程序运行后的输出结果是(C)A) 32 B) 12 C) 21 D)

4、 2241、有以下程序ttinclude (正确答案)int f(int n);main () int a=3, s;s=f (a);s=s+f(a);coutint f (int n) static int a=l;n+=a+;return n;程序运行以后的输出结果是(c)A) 7 B) 8 C) 9 D) 1042、有以下程序#includeA) 0B) 1C) 4D) 8(正确答案)43、有以下程序ttinclude (正确答案)int a=5;void fun(int b) int a=10;a+=b;coutmain () int c=20;fun(c);a+=c;cout程序运行

5、后的输出结果是【30 25】44、有以下程序ttincludeA) 10, 64 B) 10, 10(正确答案)C) 64, 10 D) 64, 6445、有以下程序#includeA) 14.0B)31.507.5D)程序有错无输出结果(正确答案)46、有以下程序ttincludeA) 0-12B) -20(正确答案)1047、以下表达正确的选项是()C语言程序是由过程和函数组成的C语言函数可以嵌套调用,例如:fun (fun (x)(正确答案)A) C语言函数不可以单独编译C语言中除了 main函数,其他函数不可作为单独文件形式存在48、题 1:假设有定义语句:int m = 5,4,3,

6、2, l,i=4;,那么下面对m数组元素的引用错误的选项是()A)miB)m22C)mm0(正确答案)49、题2:有以下程序 ttincludeB)2, 1,4, 3, 6, 5, 8, 7, 0, 9,(正确答案)D) 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,B)2, 1,4, 3, 6, 5, 8, 7, 0, 9,(正确答案)D) 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,A) 1, 2, 3, 4, 5, 6, 7, 8, 9, 0,C) 0, 9, 8, 7, 6, 5, 4, 3, 2, 1, 50、题3:有以下程序 void fun (int a

7、, int n) int i, t;for (i=0;it=ai;ai=an-l-i; an-l-i=t;main () int k10 = l,2, 3, 4, 5, 6, 7,8, 9, 10, i;fun(k, 5);for(i=2;icout程序的运行结果是(D)A) 345678B) 876543 (正确答案)C)10987650)32167851、题4:以下选项中,能正确定义数组的语句是()A) int num0. 2008;int num;B) int N=2008;int numN;C) ttdefine N 2008(正确答案)int numN;52、题5:有以下程序main

8、 () int a = 2, 3, 5, 4, i;for (i=0;iswitch (i%2) case 0:switch(ai%2)case 0:ai+;break;case 1:ai-;break;case 1:ai=0;)for (i=0;i)程序运行后的结果是:()A) 3344 B) 20503040 D) 030 4(正确答案)53、题6:有以下程序# includeA) 610o n (正确答案)1554、题7:有以下程序# include (正确答案)main ()int b 3 3= 0, 1,2,0, 1,2, 0, 1,2) , i, j,t=l;for (i=0;if

9、or (j=i;jcout程序运行后的输出结果是(C)A) 1 B) 3C) 4 D) 9分析:1、 i=0,s=s+aO=l2、 i=l,s=s+a2=43、 i=2,s=s+al=64、i=3, s=s+a3=105、i=4, s=s+aO=ll55、题8:有以下程序define N 4void fun(int a N, int b) int i;for (i=0;i)main () int x N1,2, 3, 4, 56, 7,8, 9 10,yNLi; fun(x, y);for(i=0;icout程序的运行结果是()A) 1,2, 3, 4,B) 1,0, 7,0,01,4,5,9

10、, D) 3, 4, 8, 10,(正确答案)56、题9:以下程序按下面指定的数据给x数组的下三角置数,并按如下形式输出,请填空15810main ()(正确答案) int x4 4 = 0, n=0, i, j;for (j=0;jfor(i=3;i=j; i 1 )n+;xi j= n ;for (i=0;i for(j=0;jcoutcout57、题10:以下函数findmax拟实现在数组中查找最大值并作为函数值返 回,但程序中有错导致不能实现预定功能#define MIN -2147483647int findmax (int x ,int n) int i, max;for(i=0;

11、i max=MIN;if(maxreturn max;造成错误的原因是OA)定义语句int i, max;中max未赋初值B)赋值语句max=MIN;中,不应给max赋MIN值C)语句 if (maxD)赋值语句max二MIN;放错了位置(正确答案)58、题11:有以下程序include (正确答案)main () char s = 012xy” ;int i, n=0;for(i=0;si!=0;i+) if(si= a &si cout程序运行后的输出结果是(B)A) 0 B) 2 C) 3 D) 559、题12:有以下程序ttinclude (正确答案)main () char a20=

12、 How are you?” ,b20;cinb;cout程序运行时从键盘输入:How are you?那么输出结果为【】How are you? How60、题 13:假设有定义语句:char s 10=123456700 ;,那么 strlen (s)的值A) 7 (正确答案)B)8C)9D)1061、题14:有以下程序ttincludeA) 7,4 B) 4, 10C) 8,8 D) 10, 10(正确答案)62、有以下程序includeA) 1,2, 1,2 B) 1,2,2, 1C) 2, 1,2, 1 D) 2, 1, 1,2(正确答案)63、下面关于表达式(p)+和p+的含义分析

13、说明中,错误的选项是(C)A.表达式(p)+和p+具有不同的含义,(p)+并没有修改指针p的指向,而 P+那么修改了指针p的指向。B.p+那么指的是先取出p指向的存储单元中的内容,然后将p值加1,此时p 不再指向原来的存储单元。(正确答案)C (p)+指的是先取出p指向的存储单元中的内容,然后将p指向的存储单元 中的数值加1,此时p不再指向原来的存储单元。D. (p)+指的是先取出p指向的存储单元中的内容,然后将p指向的存储单元 中的数值加1,而P仍然指向原来的存储单元。64、以下程序运行后的输出结果是(A)ttinclude (正确答案)int main ()(int a10 = l, 2,

14、 3, 4, 5, 6, 7, 8, 9, 10,p=&a3, b;6、以下选项中合法的标识符是()A) 1_1B)l-1c)_n(正确答案)D) 1_ _7、以下选项中,能用作数据常量的是()A)oll5B)0118D)115L (正确答案)8、以下选项中不能作为C语言合法常量的是()A) cd(正确答案)B)0. le+6C)aD) 0119、C源程序中不能表示的数制是()A)二进制(正确答案)B)八进制0十进制D)十六进制10、以下选项中正确的定义语句是()A)double a;b;B)double a=b=7;C) double a=7, b=7;(正确答案)D) double, a,

15、 b;11、以下不能正确表示代数式2ab/cd的C语言表达式是(D)A)2ab/c/d (正确答案)B)ab/c/d2b=p5;coutreturn 0;)A. 9 B. 5 C. 6 D. 865、以下程序的输出结果是ar=9 (正确答案)ar=9ar=llttinclude#define PR(ar) coutvoid main()int j, a = l, 3, 5, 7, 9, 11, 13, 15, p=a+5;for(j=3; j; j)switch (j)case 1:case 2: PR(p+); break;case 3: PR( (一p);66、假设定义语句:int yea

16、r=2017, p=&year;,以下不能使变量year中的值增至 2018的语句是()A. p+=l;B.(p)+;C. + (p);D.p+;(正确答案)67、以下程序运行后的输出结果是(B)#include (正确答案)int main()int a33,p, i;p=&aO 0;for(i=0;i(pi=i+l;)coutreturn 0;A. 2 B. 6 C. 9 D. 368、假设有定义int(pt) 3;,那么以下说法正确的选项是()A)定义了基类型为int的三个指针变量B)定义了基类型为int的具有三个元素的指针数组ptC)定义了一个名为pt、具有三个元素的整型数组D)定义了

17、一个名为pt的指针变量,它可以指向每行有三个整数元素的二维数 组(正确答案)69、假设二维数组a有川行n歹那么下面能够正确引用元素ai j的为(C)A. (a+in+j) B. (a+jn+i)C.(a+i)+j) D. (a+i)+j69、设有以下定义:int a3 3=1, 2, 3, 4, 5, 6, 7, 8, 9;(正确答案)int (ptr) 3= a;int p = a0;那么以下能够正确表示数组元素al2的表达式是(D)A. (ptr + 1) + 2 B. (p + 5)C. (ptr + 1) + 2) D. (ptr + 1) + 2)70、以下语句组中,正确的选项是()

18、A) char s; s=“Olympic”;(正确答案)B) char s7;s=Olympic”;C) char s;s=“Olympic;D) char s7;s= Olympic;71、假设有以下定义和语句char si10=abcd!s2=”nl23;cout那么输出结果是()A) 5 5(正确答案)B) 10 5C) 10 7D) 5 872、假设有定义语句:int a4假设0,p,q4;且OWiA) p=a(正确答案)B) qi=aiC) p=aiD) p=&a2 173、有以下程序ttincludeA) 9,OneWorld B) 9,OneDream!C) 10, OneDr

19、eam! D) 10, OneWorld(正确答案)74、设有定义:chare;,以下选项中能够使字符型指针c正确指向一个字符 串的是()A) char str = v string ;(正确答案)c=str;B) cin c;C) c=getchar ();D) c二 string” ;75、有以下程序void fun (char c, int d) (正确答案)c=c+1;d=d+1;coutmain () char b=,a, a=A;fun (&b, a) ; cout程序运行后的输出结果是()A) b, B, b, AB) b, B, B, A(正确答案)C) a, B, B, aD

20、) a, B, a, B76、有以下程序define N 8(正确答案)void fun (int x,int i)x= (x + i) ; main ()int aN=(1,2,3,4,5,6,7,81 , i;fun (a, 2);for (i=0; iN / 2; i+) coutcout程序运行后的输出结果是()A) 1313B) 2234C) 3234D) 1234(正确答案)77、以下函数的功能是()fun(char a, char b) while(b=a)! = , 0 ) a+, b+; A)将a所指字符串赋给b所指空间(正确答案)B)使指针b指向a所指字符串C)将a所指字符

21、串和b所指字符串进行比拟D)检查a和b所指字符串中是否有0,78、设有以下函数void fun(int n,char s) 那么下面对函数指针的定义和赋值均是正确的选项是()A) void (pf) (int n, char s) ; pf=fun;(正确答案)B) void pf (int n,char s); pf=fun;C) void pf (int n, char s); pf=fun;D) void (pf)(int, char s);pf=&fun;79、static int a3 = 10, 20, 30;int pp, p ;(正确答案)P=a;PP二&P;(pp0+) l+

22、=5;cout答案:25, 25, 1080、static int a2 3 = 1, 2, 3, 4, 5, 6;int m, ptr;(正确答案)ptr=&aO0;m= (ptr)(ptr+2)(ptr+4);答案:15C)a/c/db2D)2ab/cd12、义:int x=2;,以下表达式中,值不为6的是()A)x=x+lB) x+, 2xC) x=(l+x)D) 2x, x+=2 (正确答案)12、有以下程序,其中k的初值为八进制数main () int k = 011;coutk+endl;程序运行后的输出结果是(D)A) 12(正确答案)B) 11C) 10D) 913、假设有表达

23、式(w)?(x):(+y),那么其中与w等价的表达式是(D)A) w1B) w=0C) w!=lD) w!=014、假设有定义:double a=22;int i=0, k=18;,那么不符合C语言规定的赋值语 句是()A) a=a+, i+;B) i= (a+k) x ;if(x+5) coutelse coutA、7和5(正确答案)20、有如下嵌套的if语句 if (ab)if (ac) k=a;else k=c;elseif (bc) k=b;else k=c;以下选项中与上述if语句等价的语句是()A) k =(ab) ? a:b;k= (bc) ? b:c;B) k= (ab) ?(

24、bc) ? b:c);C) k= (ab) ? ( (ac) ? a:c) : ( (bc) ? b:c);(正确答案)D) k =(ab) ? a:b;k= (ac) ? a:c;21、以下选项中与if (a=l) a=b; else a+;语句功能不同的switch语句是()A) switch (a)B) switch (a=l) case 1: a+(正确答案)C) switch (a)D) switch (a=l)22、以下是if语句的基本形式()if (表达式)语句其中表达式A)必须是逻辑表达式B)必须是关系表达式C)必须是逻辑表达式或关系表达式D)可以是任意合法的表达式(正确答案)

25、23、有以下程序include main () int x;cin x ;if (x=3); elseif(x!=10) cout x ;eludeA)不等于10的整数B)大于3且不等于10的整数(正确答案)C)大于3或等于10的整数D)小于3的整数24、有以下程序ttinclude main () int a=l, b=2, c=3, d=0;if (a=l & b+=2)if (b!=2| |c!=3)cout a elsecout a b , celsecout a , b 有以下程序 include main () int n=2, k=0;while(k+&n+2);coutk ne

26、nd;A) 02(正确答案)B) 130 57D) 12E) 、有以下程序# includemain () int a=l ;b = 2;for (;a8;a+)b+=a; a+=2; couta” bendl;A) 9,18(正确答案)B) 8,11C) 7,11D) 10, 1432、以下程序段中的变量已正确定义for(i=0;i4;i+, j+)for(k=l;k3;k+); cout;程序段的输出结果是()A)B)0D)(正确答案)33、有以下程序# includemain ()int i, j, m=l;for (i=l; i0;j)if (i j) 3) break;m=ij;)c

27、out/m= mendl;)程序运行后的输出结果是()A) m=6(正确答案)B) m=2C) m=4D) m=5有以下程序# includemain ()int a=l ;b = 2;for (;a8;a+)b+=a;a+=2; couta v bendl;C、9、18(正确答案)35、以下程序运行后的输出结果是s=0 #include main () int k=l, s=0;do if(k%2)!=0) continue;s+=k;k+;while(k10);coutz,s=/zs10);36、以下程序运行时,假设输入labcedf2df回车输出结果为【lAbCeDf2dF ttinclude main () char a=0, ch;while (ch=getch ()!= n) if(a%2!=0&(ch=匕&ch= 2 )ch二ch,a,+,A,;a+; coutch;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 解决方案

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com