C语言程序设计综合考试试题与答案_第1页
C语言程序设计综合考试试题与答案_第2页
C语言程序设计综合考试试题与答案_第3页
C语言程序设计综合考试试题与答案_第4页
C语言程序设计综合考试试题与答案_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

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

2、(正确答案)5、以下选项中不合法的标识符是() A)printB)FORC)&a(正确答案)D)_006、以下选项中合法的标识符是() A)1_1B)1-1C)_11(正确答案)D)1_ _7、以下选项中,能用作数据常量的是() A)o115B)0118C)1.5e1.5D)115L(正确答案)8、以下选项中不能作为C语言合法常量的是() A)cd(正确答案)B)0.1e+6C)aD)0119、C源程序中不能表示的数制是() A)二进制(正确答案)B)八进制C)十进制D)十六进制10、以下选项中正确的定义语句是() A)doublea;b;B)doublea=b=7;C)doublea=7,b

3、=7;(正确答案)D)double,a,b;11、以下不能正确表示代数式2ab/cd的C语言表达式是(D) A)2ab/c/d(正确答案)B)ab/c/d2C)a/c/db2D)2ab/cd12、义:int x=2;,以下表达式中,值不为6的是() A)x=x+1B)x+,2xC)x=(1+x)D)2x,x+=2(正确答案)12、有以下程序,其中k的初值为八进制数main()int k011;coutk+endl;程序运行后的输出结果是(D) A)12(正确答案)B)11C)10D)913、若有表达式(w)?(-x):(+y),则其中与w等价的表达式是(D) _A)w=1B)w=0C)w!=1

4、D)w!=0 _14、若有定义:double a=22;int i=0,k=18;,则不符合C语言规定的赋值语句是() A)a=a+,i+;B)i=(a+k) x ;if(x+5) cout else cout A、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)?(bc)?a:b):(bc)?b:c);C)k(ab)?(ac)?a:c):(bc)?b:c);(正确答案)D)k(ab)?a:b;k=

5、(ac)?a:c;21、以下选项中与if(a=1)a=b; else a+;语句功能不同的switch语句是() A)switch(a)B)switch(a=1) case 1:a+(正确答案)C)switch(a)D)switch(a=1)22、以下是if语句的基本形式()if(表达式)语句其中表达式 A)必须是逻辑表达式B)必须是关系表达式C)必须是逻辑表达式或关系表达式D)可以是任意合法的表达式(正确答案)23、有以下程序#includemain()intx;cin x ;if(x=3);elseif(x!=10)cout x ;clude A)不等于10的整数B)大于3且不等于10的整

6、数(正确答案)C)大于3或等于10的整数D)小于3的整数24、有以下程序#includemain()inta=1,b=2,c=3,d=0;if(a=1&b+=2)if(b!=2|c-!=3) cout a , b , c ;else cout a , b , c ;else cout a , b , c ; A)1,2,3B)1,3,2C)1,3,3(正确答案)D)3,2,125、有以下程序 #include main() int n=2,k=0;while(k+&n+2);coutk nend; A)0 2(正确答案)B)1 3C)5 7D)1 226、有以下程序includemain()i

7、nt a1;b2;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=1;k3;k+);cout;程序段的输出结果是() A)B)C)D)(正确答案)33、有以下程序includeiostream.hmain()int i, j, m=1; for(i=1;i3;i+) for(j=3;j0;j-) if(ij)3)break; m=ij; coutm= mendl;程序运行后的输出结果是() A)m=6(正确答案)B)m=2C)m

8、=4D)m=5有以下程序includemain()int a1;b2;for(;a8;a+) b+=a;a+=2;couta“,”bendl; C、9、18(正确答案)35、以下程序运行后的输出结果是【 s=0 】#includemain()intk=1,s=0;doif(k%2)!=0)continue; s+=k;k+; while(k10);couts=s10);36、下列程序运行时,若输入labcedf2df输出结果为【 1AbCeDf2dF 】#includemain()chara=0,ch;while(ch=getch()!=n)if(a%2!=0&(ch=a&ch=z) ch=c

9、h-a+A;a+;coutch;cout=a&chch=ch-a+A;a+;coutcout37、有以下程序 #include(正确答案)intf(intx,inty)return(y-x)x);main()inta=3,b=4,c=5,d;d=f(f(a,b),f(a,c);cout 程序运行后的输出结果是(B)A)10 B)9 C)8 D)738、有以下程序 #include(正确答案)intfun(intx,inty)if(x=y)return(x);elsereturn(x+y)/2);main()inta=4,b=5,c=6;cout 程序运行后的输出结果是(B)A)3 B)6 C)

10、8 D)1239、有以下程序 #include (正确答案)fun(int x) if(x/20) fun(x/2);cout main() fun(6);cout 程序运行后的输出结果是 【 1 3 6 】 。40、有以下程序 #include (正确答案)void fun(int p) int d=2;p=d+; cout main() int a=1;fun(a); cout 程序运行后的输出结果是(C)A)32 B)12 C)21 D)2241、有以下程序 #include (正确答案)int f(int n);main() int a=3,s;s=f(a);s=s+f(a);cout

11、 int f(int n) static int a=1;n+=a+;return n;程序运行以后的输出结果是(C)A)7 B)8 C)9 D)1042、有以下程序#include A)0B)1C)4D)8(正确答案)43、有以下程序 #include (正确答案)int a=5;void fun(int b) int a=10;a+=b;cout main() int c=20;fun(c);a+=c;cout 程序运行后的输出结果是 【 30 25 】 。44、有以下程序#include A)10,64 B)10,10(正确答案)C)64,10 D)64,6445、有以下程序#inclu

12、de A)14.0B)31.5C)7.5D)程序有错无输出结果(正确答案)46、有以下程序#include A)0B)-12C)-20(正确答案)D)1047、以下叙述正确的是() A)C语言程序是由过程和函数组成的B)C语言函数可以嵌套调用,例如:fun(fun(x)(正确答案)C)C语言函数不可以单独编译D)C语言中除了main函数,其他函数不可作为单独文件形式存在48、题1:若有定义语句:int m=5,4,3,2,1,i=4;,则下面对m数组元素的引用错误的是() A)m-iB)m22C)mm0 D)mmi(正确答案)49、题2:有以下程序#include A)1,2,3,4,5,6,

13、7,8,9,0,B)2,1,4,3,6,5,8,7,0,9,(正确答案)C)0,9,8,7,6,5,4,3,2,1,D)0,1,2,3,4,5,6,7,8,9,50、题3:有以下程序voidfun(inta,intn)inti,t;for(i=0;it=ai;ai=an-1-i;an-1-i=t;main()intk10=1,2,3,4,5,6,7,8,9,10,i;fun(k,5);for(i=2;icout程序的运行结果是(D) A)345678B)876543(正确答案)C)1098765 D)32167851、题4:下列选项中,能正确定义数组的语句是() A)int num0.2008

14、;B)int num;C)int N=2008;int numN;D)#define N 2008(正确答案)int numN;52、题5:有以下程序main() 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)3 3 4 4 B)2 0 5 0C)3 0 4 0 D)0 3 0 4(正确答案)53、题6:有以下程序include A)6B)10C)11(正确答案)D)1554、题7:有以下

15、程序 include (正确答案)main()int b 33=0,1,2,0,1,2,0,1,2,i,j,t=1;for(i=0;ifor(j=i;jcout程序运行后的输出结果是(C)A)1B)3C)4D)9分析:1、i=0,s=s+a0=1 _2、i=1,s=s+a2=4 _3、i=2,s=s+a1=6 _4、i=3,s=s+a3=10 _5、i=4,s=s+a0=11 _55、题8:有以下程序#defineN4voidfun(intaN,intb)inti;for(i=0;imain()int xN=1,2,3,4,5,6,7,8,9,10,yN,i;fun(x,y);for(i=0;

16、icout程序的运行结果是() A)1,2,3,4,B)1,0,7,0,C)1,4,5,9,D)3,4,8,10,(正确答案)56、题9:以下程序按下面指定的数据给x数组的下三角置数,并按如下形式输出,请填空 _4 _37 _269 _15810 main()(正确答案)intx44=0,n=0,i,j;for(j=0;jfor(i=3;i=j;【 i- 】)n+;xij=【n】;for(i=0;ifor(j=0;jcoutcout57、题10:以下函数findmax拟实现在数组中查找最大值并作为函数值返回,但程序中有错导致不能实现预定功能#define MIN -2147483647int

17、findmax (int x,int n) int i,max;for(i=0;i max=MIN;if(maxreturn max;造成错误的原因是() A)定义语句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&sicout程序运行后的输出结果是(B)A)0 B)2 C)3 D)559、题12:有以下程序 #in

18、clude (正确答案)main() char a20=”How are you?”,b20;cinb;cout程序运行时从键盘输入:How are you?则输出结果为 【 】How are you? How60、题13:若有定义语句:chars10=123456700;,则strlen(s)的值是() A)7(正确答案)B)8C)9D)1061、题14:有以下程序#include A)7,4 B)4,10C)8,8 D)10,10(正确答案)62、有以下程序#include A)1,2,1,2 B)1,2,2,1C)2,1,2,1 D)2,1,1,2(正确答案)63、下面关于表达式(p)+

19、和p+的含义分析说明中,错误的是(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) #include(正确答案)intmain()inta10=1,2,3,4,5,

20、6,7,8,9,10,p=&a3,b;b=p5;cout return0;A.9 B.5 C.6 D.8 _65、以下程序的输出结果是_ ar=9(正确答案)ar=9ar=11#include#define PR(ar) cout void main()int j, a=1,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 year=2017,p=&year;,以下不能使变量year中的值增至2018的语句是() A.p+=1;B.(p)+

21、;C.+(p);D.p+;(正确答案)67、以下程序运行后的输出结果是(B) #include (正确答案)int main()int a33,p,i;p=&a00;for(i=0;ipi=i+1;cout return 0;A.2 B.6 C.9 D.368、若有定义int(pt)3;,则下列说法正确的是() A)定义了基类型为int的三个指针变量B)定义了基类型为int的具有三个元素的指针数组ptC)定义了一个名为pt、具有三个元素的整型数组D)定义了一个名为pt的指针变量,它可以指向每行有三个整数元素的二维数组(正确答案)69、若二维数组a有m行n列,则下面能够正确引用元素aij的为(C

22、) _A.(a+in+j) B.(a+jn+i) _C.(a+i)+j) D.(a+i)+j _69、设有以下定义: int a33 = 1, 2, 3, 4, 5, 6, 7, 8, 9;(正确答案)int (ptr)3 = a;int p = a0;则以下能够正确表示数组元素a12的表达式是(D)A.(ptr + 1) + 2 B.(p + 5) _C.(ptr + 1) + 2) D.(ptr + 1) + 2) _70、下列语句组中,正确的是() A)char s;s=Olympic;(正确答案)B)char s7;s=Olympic;C)char s;s=Olympic;D)char

23、 s7;s=Olympic;71、若有以下定义和语句char s110=abcd!,s2=n123;cout则输出结果是() A)5 5(正确答案)B)10 5C)10 7D)5 872、若有定义语句:int a410,p,q4;且0i A)p=a(正确答案)B)qi=aiC)p=aiD)p=&a2173、有以下程序#include A)9,OneWorld B)9,OneDream!C)10,OneDream! D)10,OneWorld(正确答案)74、设有定义:char c;,以下选项中能够使字符型指针c正确指向一个字符串的是() A)char str =”string”;(正确答案)c=str;B)cin c;C)c=getchar();D)c=”string”;75、有以下程序 void

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论