您好,欢迎访问三七文档
《C语言程序设计B卷》试卷第1页(共8页)《C语言程序设计B卷》试卷第2页(共8页)一、选择题:(共32分,每空2分)1.能将高级语言编写的源程序转换成目标程序的是___B___。A)编辑程序B)编译程序C)解释程序D)链接程序2.在多媒体计算机系统中,不能用以存储多媒体信息的是__A____。A)光缆B)软盘C)硬盘D)光盘3.以下叙述中正确的是___A___A)构成C程序的基本单位是函数B)可以在一个函数中定义另一个函数C)main()函数必须放在其它函数之前D)所有被调用的函数一定要在调用之前进行定义X4.下面那一项在C语言中是非法的常量(B)CA.—78.33B.“sina.com”C.‘ax’D.5.2E-35.下面运算符的优先级比较,正确的是(C)A.“!=”“+”“=”“&&”B.“&&”“!=”“+”“=”C.“=”“&&”“!=”“+”D.“+”“!=”“=”“&&”6.以下选项中合法的实型常数是___C___A)5E2.2B)E-3C)2E3D)1.3E7.以下选项中合法的用户标识符是___B___A)longB)_2TestC)3DmaxD)A.datX8.C语言中的简单数据类型包括(B)。DA)整型,实型,逻辑型B)整型,实型,字符型,逻辑型C)整型,字符型,逻辑型D)整型,实型,字符型X9.要求当A的值为奇数时,表达式的值为真;A的值为偶数时,表达式的值为假,以下不满足要求的表达式是(B)CA.A%2==1B.!(A%2==0)C.!(A%2)D.A%210.有以下程序段intn=0,p;do{scanf(%d,&p);n++;}while(p!=12345&&n3);此处do-while循环的结束条件是____D__A)p的值不等于12345并且n的值小于3B)p的值等于12345并且n的值大于等于3C)p的值不等于12345或者n的值小于3D)p的值等于12345或者n的值大于等于311.判断char型变量ch是否为小写字母的正确表达式是(D)A.‘a’=ch‘z’B.(‘a’=ch)AND(‘z’=ch)C.(ch=‘a’)&(ch=‘z’)D.(ch=‘a’)&&(ch=‘z’)12.以下关于C语言标识符的描述中,正确的是(D)A)标识符可以由汉字组成;B)标识符只能以字母开头;C)关键字可以作为用户标识符;D)Area与area是不同的标识符。13.执行语句for(i=10;i0;i);后,变量i的值为(A)A)10B)9C)0D)114.putchar函数可以向终端输出一个(A)A.字符或字符型变量值B.字符串C.整型变量表达式的值D.实型变量的值15.若用数组名作为函数调用时的实参,则实际上传递给行参的是(B)A.数组首地址B.数组的第一个元素值C.数组中全部元素的值D.数组元素的个数16.与十进制511等值的十六进制数为___A___。A)1FFB)2FFC)1FED)2FE二、写出下列数学表达式在C语言中相应的表达式表示(每题2分,共14分)(1)542412001200/(24-4*5)(2)c×ba22c*sqrt(a*a+b*b)(3)cos2(a+b)cos(a+b)*cos(a+b)(4)条件“50x100或x200”(x50)&&(100x)||(x200)?(5)|a+b|abs(a+b)?(6)b-e5b-exp(5)X(7)lnln(x+y)ln(ln(x+y))log(log(x+y))三、填空题,请在下面各小题的______内填入正确的内容。(每空2分,共30分)1.下列程序的功能是求1-1000之间能同时被3,5整除的数,按每行10个数的格式输出这些数,请完成该程序。main(){int__i,j=0___________;《C语言程序设计B卷》试卷第3页(共8页)《C语言程序设计B卷》试卷第4页(共8页)for(i=1;i1000;__i++_____){if(__(i%3==0)&&(i%5==0)_________){printf(“%4d”,i);j=j+1;}if(j==10){printf(“\n”);j=0}}}2.根据以下if语句所给的条件,写出等价的switch语言,使它完成相同的功能,(假设score取值在0-100之间)。请在_________内填入正确内容。if语句:if(score60)k=1;elseif(score70)k=2;elseif(score80)k=3;elseif(score90)k=4;elsek=5;等价的switch语句:switch(score/10){case0:case1:case2:case3:case4:case5:________k=1________________;case6:________k=2________________;case7:________k=3________________;case8:________k=4________________;case9:case10:_______k=5____________;}3.以下程序实现输出a,b,c三个数中的最大者,请在________内填入正确的内容。main(){inta=4,b=6,c=7;int__d,e___________;if___ab,__________d=a;elsed=b;if____dc,_________e=d;elsee=c;printf(“max=%d\n”,e);}4.下面程序的功能是读入20个整数,统计非负数个数,并计算所有非负数的和。#includestdio.hmain(){inti,a[20],s,count=0;s=0;for(i=0;i20;__i++____)scanf(“%d”,__a[i]_______);for(i=0;___i20____;i++){if(a[i]0)_____count++_________;s+=a[i];count++;}printf(“s=%d\tcount=%d\n”,s,count);}四、编程题(24分)1.编写程序,从键盘输入梯形的上下底边长度和高,计算梯形的面积。(注:梯形的面积计算公式为:area=21(a+b)*h其中a,b分别表示上、下边长,h表示高)(6分)2.编写程序判断某年是否为闰年,闰年的条件符合如下二者之一即可:(1)能被4整除,但不能被100整除。(2)能被400整除(8分)3.“水仙花数”是指一个三位数,它的三个数位数字的立方和这个数的数值相等,编程打印所有的水仙花数。(10分)1.#includestdio.h得分评卷人复查人《C语言程序设计B卷》试卷第5页(共8页)《C语言程序设计B卷》试卷第6页(共8页)intmain(intargc,char*argv[]){inta,b,h;floats;printf(请依次输入上边长、下边长和高\n);scanf(%d,%d,%d,&a,&b,&h);printf(你输入的是上边长为%d,下边长为%d,高为%d\n,a,b,h);s=(a+b)*h/2.0;printf(梯形的面积为%f\n,s);}2.#includestdafx.h#includestdio.hintmain(intargc,char*argv[]){intyear;printf(请输入要判断的年份\n);scanf(%d,&year);if(year%4==0&&year%100!=0||year%400==0)printf(%d年是闰年\n,year);elseprintf(%d年不是闰年\n,year);return0;}3.#includestdafx.h#includestdio.hintmain(intargc,char*argv[]){intx,a,b,c;printf(所有的水仙花数为:\n);for(x=100;x=999;x++){c=x%10;b=((x-c)%100)/10;a=(x-b*10-c)/100;if(a*a*a+b*b*b+c*c*c==x)printf(%d\n,x);}return0;}一.单项选择题(共32分,每题2分)1)B2)A3)A4)C5)C6)C7)B8)D9)C10)D11)D12)C13)A14)A15)A二.写出下列数学表达式在C语言中相应的表达式表示(每题2分,共14分)(1)1200/(24-4*5)如果希望浮点数结果可考虑:1200/(24-4*5.0)(2)c*sqrt(a*a+b*b)(3)cos(a+b)*cos(a+b)(4)x50&&x100||x200(5)abs(a+b)(6)b-exp(5)(7)log(log(x+y))三、填空题,请在下面各小题的______内填入正确的内容。(每空2分,共30分)1.(1)i,j=0(2)i++(3)i%15==0或i%3==0&&i%5==02.(4)k=1;break(5)k=2;break(6)k=3;break(7)k=4;break(8)k=53.(9)d,e(10)ab(11)dc4.(12)i++(13)&a[i](14)i20(15)continue四.编程题(共24分)1.(6分)#includestdio.hmain(){floata,b,h,s;printf(Inputa,b,h:);scanf(%f%f%f,&a,&b,&h);《C语言程序设计B卷》试卷第7页(共8页)《C语言程序设计B卷》试卷第8页(共8页)s=(a+b)*h/2.0;printf(s=%.2f\n,s);}2.(8分)#includestdio.hmain(){inty;printf(“pleaseinputyear:”);scanf(“%d”,y);if(y%4==0&&y%100!=0||y%400==0)printf(“%dyearisleapyear”,y);elseprintf(“%dyearisn’tleapyear”,y)}3.(10分)#includestdio.hmain(){intd0,d1,d2,n;printf(Thenumbersare:);for(n=100;n=999;n++){d0=n%10;d1=n%100/10;d2=n/100;if(n==d0*d0*d0+d1*d1*d1+d2*d2*d2)printf(%5d,n);}printf(\n);}
本文标题:C语言考试卷及答案
链接地址:https://www.777doc.com/doc-2908462 .html