资源描述:
《最新浙江理工大学c语言期末考试模拟试卷1备课讲稿.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、《C程序设计》期末模拟试卷一、单选题(每小题2分,共20分)1、以下叙述正确的是()[A]在C程序中,main函数必须位于程序的最前面。[B]C程序的每一行只能写一条语句。[C]C语言本身没有输入和输出语句。[D]在对一个C程序进行编译过程中,可发现注释中的错误。2、能用作变量名字的标识符是()。[A]union[B]double[C]a123_cd[D]ab-13、break语句()。[A]只能出现在if语句中[B]可用在循环体和switch语句中[C]只能出现在循环体中[D]可用在函数中的任何语句4、执行
2、下面的程序段后,变量k中的值为()。intk=3,s[2];s[0]=k;k=s[1]*10;[A]不定值[B]33[C]30[D]105、设有数组定义:chararray[]="China";则数组array所占的空间为()个字节。[A]4[B]5[C]6[D]76、下列程序执行后的输出结果是( )#defineMA(x)x*(x-1)#includevoidmain(){inta=1;printf("%d",MA(1+a));}[A]3[B]2[C]1[D]07、已知:inta,*p
3、=&a;则为了得到变量a的值,下列错误的表达式为________。[A]p[0][B]*p[C]&*a[D]*&a8、数组名作为实参传递给形参时,数组名被处理为( )。[A]该数组的长度[B]该数组的元素个数[C]该数组的首地址[D]该数组中各元素的值9、执行循环语句:for(x=y=0;y!=250&&x<4;x++)y+=50;其循环体执行的次数为:[A]5[B]2[C]3[D]410、设有intx,y;以下语句判断x和y是否相等,正确的说法是该语句________。if(x=y)printf("xi
4、sequaltoy.");[A]语法错[B]能判断x和y是否相等[C]编译出错[D]不能判断x和y是否相等二、程序填空题(阅读以下程序说明和相应程序,将空格补充完整。每小题2分,共30分)1、【程序说明】输出100以内(不含100)能被3整除且个位数为6的所有整数。【运行示例】6366696【程序】#includevoidmain(){inti,j;for(i=0;(1);i++){j=(2);if((3))continue;(4);}}【供选择的答案】(1)[A]i<100[B]i<=10
5、[C]i<10[D]i<=100(2)[A]i/6[B]i*6[C]i%6[D]i*10+6(3)[A]j%6!=0[B]j%3!=0[C]i%3==0[D]i%3!=0(4)[A]printf("%d",j)[B]printf("")[C]printf("%d",i)[D]printf("%d",j)2、【程序说明】判别并显示输入的整数是否为质数。【运行示例】1717isaprime!【程序】#includevoidmain(){intn;intprime(int);(5)sca
6、nf("%d",&n);v=(6);if(v==1)thenprintf((7))elseprintf((8))}intprime(intp){intk,i,v=1;(9);for(i=2;i<=k;i++){(10)}returnv;}【供选择的答案】(5)[A]intprime;[B]intk;[C]inti;[D]intv;(6)[A]sqrt(n)+1[B]i+1[C]prime(n)[D]sqrt(n)(7)[A]"%disaprime!",n[B]"%disnotaprime!
7、,n"[C]"%disaprime!,n"[D]"%disnotaprime!",n(8)[A]"%disaprime!",n[B]"%disnotaprime!,n"[C]"%disaprime!,n"[D]"%disnotaprime!",n(9)[A]k=sqrt(p);[B]k=sqrt(i);[C]i=sqrt(p);[D]p=sqrt(k);(10)[A]if(p%i==0)v=0;[B]if(p%i=0)v=0;[C]if(p%i==0)v==0;break;[D]i
8、f(p%i==0)v=0;break;3、【程序说明】以下程序中函数huiwen的功能是检查一个字符串是否是回文,当字符串是回文时,函数返回字符串:yes!,否则函数返回字符串:no!,并在主函数中输出。所谓回文即正向与反向的拼写都一样,例如:adgda。【运行示例】Input:adgdayes!【程序】#includechar*huiwen(char*str){char*p1,*