C语言程序设计AB试卷期末考试题及答案高职.docx
C语言程序设计试卷(A卷)适用班级:考试班级姓名学号题号一二三四五七八总得分实得分一、选择题(每小题4分,共40分)1以下叙述中正确的是_(A)用C语言实现的算法必须要有输入和输出操作(B)用C语言实现的算法可以没有输出但必须要有输入(C)用C程序实现的算法可以没有输入但必须要有输出(D)用C程序实现的算法可以既没有输入也没有输出2以下叙述中错误的是A)用户所定义的标识符允许使用关键字B)用户所定义的标识符应尽量做到见名知意C)用户所定义的标识符必须以字母或下划线开头D)用户定义的标识符中,大、小写字母代表不同标识3下述标识符中,O是合法的用户标识符。A.A#CB.getchC.voidD.ab*4设x、y>t均为int型变量,则执行语句:x=y=3;t=+x|+y;后y的值为A)不定值B)4C)3D)15printf("%2.2,1234.5678)的输出结果为A)出错B)1234.56C)1234.57D)1234.5700006在以下给出的表达式中,与do-whi1e(E)语句中的(E)不等价的表达式是()。A.(!E=0)B.(E>0E<0)C.(E=O)D.(EJ=O)7以下程序输出结果是()o#inc1ude"stdio.hmain()intw=4,x=3,y=2,z=1;printf(/%dnz(w<x?w:z<y?z:x);)(A)I(B)2(03(D)48以下选项中,不能正确赋值的是A) chars110;s1=zzCtestz"B) chars2=,C,t,e,s,t,;C) chars320=zzCtestzz;D) char*s4="Ctestn”9下面程序的输出是main()intx=3,y=6,a=0;whi1e(x+÷!=(y+=o1)a+o=1;if(y#inc1udemain()charss10=12345”;strcat(ss,zz6789'');gets(ss);printf(,%sn,z,ss);A)ABCB)ABC9C)123456ABCABC45678910以下程序调用findmax函数返回数组中的最大值findmax(int*a,intn)int*p,*s;for(p=a,s-a;p-a<n;p+)if()s=p;return(*s);)mainOintx5=12,21,13,6,18;printf(zz%dnzz,findmax(x,5);)在下划线处应填入的是A)p>sB)*p>*sC)ap>asD)p-a>p-s二、填空题(每小题2分,共10分),两种。1数据类型混合运算时,要进行同型转换,转换方式分为和2设intx=9,y=8;表达式x=y+1的结果是。3在C语言中,整型(int)变量的取值范围是4inc1ude<stdio.h>main()intn=0,fact=1,sum=0;do(n+;fact-fact*n;sum+-fact;whi1e(n<4);printf(,%d,z,sum);运行结果为:5阅读程序:#inc1ude"string.h#inc1udezzstdio.hstr1e(chara,charb)intnum-0,n-0;whi1e(*(a+num)!-,0,),num+;whi1e(bn)*(a+num)=bn;num+;n+;return(num);mainOcharstr181,str281,*p1=str1,*p2=str2;gets(p1);gets(p2);printf(zz%dnzz,str1e(p1,p2);运行上面程序,如果从键盘上输入字符串qwerty和字符串abed则程序的输出结果是O三、求运行结果(每小题5分,共20分)1#inc1udezzstdio.h"main()inta=2,b=-1,c=2;if(a<b)if(b<0)c=0;e1sec+;printf("%dn”,c);2以下程序运行的结果ttinc1ude<stdio.h>ttinc1ude<math.h>main()inti,k,m,n-0;for(m=1;m<=10;m+=2)if(n%10=0)printfn");k=sqrt(m);for(i=2;i<=k;i+)if(m%i=0)break;if(i>k)printf("%2d”,m);n+;3下面程序的输出结果是。ttinc1ude<stdio.h>voidfun(char*a1,char*a2,intn)intk;for(k=0;k<n;k+)a2k=(a1k-,A,-3+26)%26÷,A,;a2n,0,;main()chars15="ABCD”,s25;fun(si,s2,4);puts(s2);4main()intx=31,y=2,s=0;dos-=x*y;x+=2;y-=3jwhi1e(x%3=0);printf(zz=%dty=%dts=%dnzz,x,y,s);四、判断题正确答"对"错误答错”(每小题2分,共22分)1%运算两侧的数据可以是任意类型的数据。O2与整型和实型变量一样,程序中用到的所有字符变量使用前也必须经过定义。()3C语言是一种解释方式的程序设计语言。()4函数getchar()与getch()的功能完全相同。5if(a>b)c=a;e1sec=b;与此功能相同的语句是:c=a>b?a:b;()6if(表达式)只要表达式的值为非0,则执行其后面的语句.()7设已定义m1,m2,m3,M为int类型变量,为了将整数10赋给出、m3,将整数20赋给m2、m4,则对应以下scanf函数调用语句SCanf("%d%d”,&m1,m2);scanf("%d%d",&m3,m4);的正确输入方法是1020(CR>1020(CR)(<CR>代表换行符,口代表空格)()8C语言规定,在程序中用到的每一个变量都要指定它们属于哪一种类型,即对变量进行强制定义其类型。()9C语言是通过函数来实现模块化程序设计的。所以较大的C语言应用程序,往往是由多个函数组成的,每个函数分别对应各自的功能模块。()10break语句用在循环体中,可结束本层循环,continue语句用在循环体中,可结束本次循环。()H在语法上和单一语句相同,即单一语句可以出现的地方,也可以使用复合语句。()五、程序填空题(每小题4分,共8分)1判断n是否是素数,若是,则返加1,否则返回0。补充这段程序。intprim(intn)intm;for(m=2;m<=n2;m+)if1return0;2;2输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。main()intn1,n2,n3,n4;charc;11;whi1e(2)!='n')if(c>=,a,3)n1+;e1seif(c>,0,【4】)n2+;e1seif(c=,)n3÷+;e1se5;printf(z,%d%d%d%dnzz,n1,n2,n3,n4);C语言程序设计试卷(A卷)答题卷考试班级姓名学号题号一四五/、.七八总得分实得分大题号小题号答案一1一2一34一5一6一78一910.1.2二34二51三23三4四1四2四3四4四5四6四7四8四9四10四I1五1五2C语言程序设计试卷(A卷)参考答案题号四五/、.七八总得分合计分数401020228100大题号小题号答案1答案2一1C2A一3B、4C一5C一6C一7A一8A一9D一10b一1自动类型转换强制类型转换-fc21fc3-32768-3276743351012三21357三3XYZA三4x=35,y=-4,s=-29四1X四2四3X四4错四5正确四6正确四7正确四8四9四10正确四I1五I1n%m=0;2return1;五21n1=2=n3=n4=02(c=getchar()【3】<fe<fec<='z'c>='A'<fc<fec<=,Z,4c<=,9,5n4+C语言程序设计试卷(B卷)适用班级:考试班级姓名学号题号一二三四五七八总得分实得分一、选择题(每小题4分,共40分)1选择出合法的if语句(设intx,y;)A) if(a=b)x+;B) if(a=<b)x+;C) if(a<>b)x+;D) if(a=>b)x+;2以下叙述中错误的是A)用户所定义的标识符允许使用关键字B)用户所定义的标识符应尽量做到见名知意C)用户所定义的标识符必须以字母或下划线开头D)用户定义的标识符中,大、小写字母代表不同标识3下述标识符中,O是合法的用户标识符。A.A#CB.getchC.voidD.ab*4以下程序的输出结果是main()intx=023;Printf("%dn",-x);)A)18B)22C)23D)195SWitCh后面的表达式不可以是A.浮点表达式B.整型表达式C.逻辑表达式D.字符表达式6在执行以下程序时,如果从键盘上输入,ABCdef<回车>,则输出为ttinc1ude<stdio,h>main()charch;whi1e(ch=getchar