您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 冶金工业 > C语言模拟试卷及答案
—1—2011―2012学年第一学期《C语言程序设计》模拟试卷(B)一、单项选择题(每题1分,共30分)1.C语言程序总是从______开始执行。A)第一条语句B)第一个函数C)主函数D)子程序2.以下选项中正确的C语言标识符是______。A)a+bB)3DmaxC)_25D)%d3.以下选项中正确表示字符型常量的是______。A)'\t'B)aC)'abc'D)'279'4.以下选项中属于C语言基本数据类型的是______。A)逻辑型B)双精度型C)复数型D)集合型5.已知:inta=8,b=5,c;,则执行语句c=a%b+0.3;后,c的值是______。A)1B)1.3C)3D)3.36.设在程序中的a,b,c均被定义为整型并且已赋予大于1的值,能正确表示代数式abc1的表达式是______。A)1/a*b*cB)1/(a*b*c)C)1/a/b/(float)cD)1.0/a/b/c7.已知字符'A'的ASCII码值为十进制数65,则执行语句printf(%c,'A'+2);后,输出结果是______。A)AB)CC)65D)678.已知:inti=1;,则执行语句printf(%d,i++);后,输出结果是______。A)1B)2C)-1D)-29.以下选项中,和语句x*=y+2;等价的是______。A)x=x*y+2;B)y=x*(y+2);C)x=y+2*x;D)x=x*(y+2);10.以下选项中能正确判断字符变量c不是大写字母的表达式是______。A)c'A'&&c'Z'B)!(c'A'&&c'Z')C)c='A'||c='Z'D)!(c='A'&&c='Z')11.已知:floata=7.0,b=2.5;,则表达式(int)a/(int)b的值是______。A)2B)2.8C)3D)3.512.已知:inta,b,c;,若要给变量a、b、c输入数据,以下正确的输入语句是______。A)scanf(%d,%d,%d,a,b,c);B)scanf(%d,%d,%d,&a;&b;&c);C)scanf(%d,%d,%d,&a&b&c);D)scanf(%d,%d,%d,&a,&b,&c);13.已知:inta=1,b=2;,则执行语句printf(%d,ab?a:b);后,输出结果是______。A)0B)1C)2D)以上都不正确14.以下选项中叙述正确的是______。A)在switch语句中,不一定使用break语句B)break语句必须与switch语句中的case配合使用C)在switch语句中必须使用defaultD)break语句只能用于switch语句中15.执行以下程序后,输出结果是______。#includestdio.hvoidmain()—2—{inta=3,b=-1,c=1;if(ab)if(b0)c=0;elsec++;printf(%d\n,c);}A)0B)1C)2D)316.已知数学关系式x≥y≥z,以下选项中能正确表示该关系式的C语言表达式是______。A)(x=y)&&(y=z)B)(x=y)AND(y=z)C)x=y=zD)(x=y)||(y=z)17.已知:inti=5;,则执行语句while(i8)i+=2;后,变量i的值是______。A)5B)7C)8D)918.执行以下程序后,输出结果是______。#includestdio.hvoidmain(){intn=9;while(n6){n--;printf(%d,n);}}A)987B)9876C)8765D)87619.执行以下程序后,输出结果是______。#includestdio.hvoidmain(){inti,s=0;for(i=1;i=6;i++){if(i%3==0)break;s+=i;}printf(%d\n,s);}A)3B)6C)12D)2120.已知:intx[3][3]={1,2,3,4,5,6,7,8,9};,则执行语句printf(%d,x[1][2]);的输出结果是______。A)2B)5C)6D)721.以下选项中能实现将两个字符串s1和s2连接起来的语句是______。A)strcpy(s1,s2);B)strcat(s1,s2);C)strcmp(s1,s2);D)strlen(s1,s2);22.C语言中,关于函数说法正确的是______。A)函数定义可以嵌套,但函数调用不可以嵌套B)函数定义不可以嵌套,但函数调用可以嵌套C)函数定义和函数调用均不可以嵌套D)函数定义和函数调用均可以嵌套23.一个C语言源文件中定义的全局变量的作用域是______。A)本函数的全部范围B)本程序全部范围C)本文件全部范围D)从定义开始至本文件结束24.执行以下程序后,输出结果是______。—3—#includestdio.hvoidsub(intx,inty,int*z){*z=y-x;}voidmain(){inta;sub(10,5,&a);printf(%d,a);}A)5B)-5C)0D)不确定25.已知:intx,*p;,则以下赋值语句中正确的是______。A)p=&x;B)p=*x;C)&x=*p;D)*p=*x;26.已知:charstr[]=Hello,*ptr=str;,则表达式*(ptr+5)的值为______。A)'o'B)'\0'C)'o'的地址D)不确定27.执行以下程序后,输出结果是______。#includestdio.h#defineF(X)X+Xvoidmain(){inta=5;printf(%d,2*F(a));}A)5B)10C)15D)2028.有定义:intn=0,*p=&n,**q=&p;则以下选项中,正确的赋值语句是______。A)p=1;B)*q=2;C)q=p;D)*p=5;29.已知:structstudent{intage;intnum;}stu,*p=&stu;以下对结构体变量stu中成员age的非法引用是______。A)stu.ageB)(*p).ageC)p-ageD)p.age30.已知:FILE*fp;intch;,能将信息写入fp所指向文件的语句是_____。A)fgetc(ch,fp);B)ch=fgetc(fp);C)fputc(ch,fp);D)ch=fputc(fp);二、判断题(每题1分,共10分,正确划T,错误划F)1.C语言对主函数main()放置的位置没有要求,放在文件头或文件尾或文件中间都可以。()2.C语言程序一行只能写一个语句。()3.C语言有三种结构化程序设计方法,分别为顺序结构、选择结构和循环结构。()4.C语言要求对所用到的变量作强制定义,“先定义后使用”。()5.for语句作为循环控制语句时,从语法上将其括号内各个表达式都可缺省,但表达式内的分号却不可以却省。()6.C语言中字符's'和字符串s是等价的,两者都占用一个字节。()7.在C语言中,程序的最小编译单位是源文件,最小功能单位是函数。()8.在定义指针型变量时指定的基类型为该指针变量所指向的变量类型。()—4—9.逗号表达式的值是第一个表达式的值。()10.在发生函数调用时,主~被调函数中的参数可以是简单变量,也可以是数组名,当采用数组名作为参数时其数据传递方式为单向值传递。()三、填空题(每空2分,共20分)1.数学式acb42写成C语言表达式是___________。2.已知inta=10,b=15;,则表达式!ab的值是___________。3.已知floatx=1.234;,则执行语句printf(%.2f,x);后,输出结果是___________。4.已知inta,b,c;,则执行语句a=5+(b=6,c=4);后,变量a的值是___________。5.已知intx;for(x=10;x4;x--);,则该循环共执行___________次。6.已知floata[2][3];,则系统为数组a分配的存储空间是___________字节。7.已知char*p=\\Good\tMorning!;,则表达式strlen(p)的值是___________。8.设有函数调用语句f(x,(x,y,z));,则该调用语句中实参的个数是___________。9.已知inta[5]={1,3,5,7,9},*p=a;,则表达式*p+3的值是___________。10.已知:union{charc;floata;}test;则sizeof(test)的值是___________。四、阅读理解题(每题4分,共20分)1.以下程序的运行结果是______________。#includestdio.hvoidmain(){intweek=6;switch(week){case1:printf(Monday);break;case2:printf(Tuesday);break;case3:printf(Wednesday);break;case4:printf(Thursday);break;case5:printf(Friday);break;case6:printf(Saturday);break;case7:printf(Sunday);break;default:printf(Error);}}2.以下程序的运行结果是______________。#includestdio.hvoidmain(){—5—ints=0,f=1,i;for(i=1;i=10;i++){s=s+i*f;f=f*(-1);}printf(s=%d,s);}3.以下程序的运行结果是______________。#includestdio.hvoidmain(){inta[3][3]={{1,23,6},{7,20,29},{14,25,17}};inti,j,max,r,c;max=a[0][0],r=0,c=0;for(i=0;i3;i++)for(j=0;j3;j++)if(a[i][j]max){max=a[i][j];r=i;c=j;}printf(max=%d,r=%d,c=%d,max,r,c);}4.以下程序运行结果是__________。#includestdio.hmain(){inta[4][4]={{1,2,3,4},{5,6,7,8},{3,9,10,2},{4,2,9,6}};inti,s=0;for(i=0;i4;i++)s+=a[i][0];printf(%d\n,s);}5.以下程序运行结果是__________。#includestdio.hvoidmain(){inti,s=0;for(i=1;i=3;i++){staticinta=0;a=a+i;s=s+a;}printf(s=%d,s);}五、编程题(第1题6分,第2、3题各7分,共20分)1.编程从键盘输入一个正整数,判断其个位数是否为5,若是5则输出Yes,否则输出No。2.从键盘上输入a与n的值,计算并输出sum=a+aa+aaa+aaaa+…(共n项)的和。例a=2,n=4,则—6—sum=2+22+222+2222。3.利用函数编程查找并输出100~999中的“水仙花数”。所谓“水仙花数”指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=13+53+33。《C语言程序设计》模拟试卷(B)答案一、单项选择题(每题1分,共30分)题号12345678910答案CCABCDBADD题号11121314151617181920答案CDCABADDAC题号21222324252627282930答案BBCBABCDDC二、判断题(每题1分,共10分,正确划T,错误划F)题号12345678910答案TFTTTFTTFF三、填空题(每空2分,共20分)题号答案1sqrt(b*b-4*a*c)
本文标题:C语言模拟试卷及答案
链接地址:https://www.777doc.com/doc-1494340 .html