还剩7页未读,继续阅读
文本内容:
2011-12-1学期《C语言程序设计》期末试卷A班级____________姓名____________学号________________大题号一二三四总分得分判卷/核分人“
一、选择题”使用答题卡选择“
二、看程序写运行结果”答题处题号答案
二、1
二、2
二、3“
三、综合题”答题处题号答案
三、1
三、2
三、3行号修改后“
四、编程题”答题处
1、选择题每题2分,共60分,请使用答题卡选择
1、C语言源程序文件默认的扩展名是____
2、A..CB..OBJC..EXED..COM
3、VC++
6.0下,int型的含义是____
4、A.16位不带符号整型B.16位带符号整型C.32位不带符号整型D.32位带符号整型
5、错误的标识符是____
6、A.AbcB._123C.a1D.2b
7、printf库函数调用中,格式串“%10d”中10的含义是____A.输出的数值之前输出10B.输出的数值之后输出10C.输出的数值至少占10位D.输出的数值最多占10位
8、已知doublex=2;则语句printf“%f”x;的运行结果是____
9、A.输出2B.输出
2.0C.输出
2.000000D.输出
2.
000000000010、若要求使用scanf库函数往int型变量a中输入数据之前屏幕提示“a=”,则可以采用的方法是____A.使用语句scanf”a=%d”a;B.使用语句scanf”%d”a=a;C.使用语句scanfa=”%d”a;D.使用两个语句printf”a=”;scanf”%d”a;
11、已知inta=2;则表达式的值不为3的是____
12、A.1+aB.a+1C.a++D.++a
13、能正确表示数学上“a≥10或a≤0”的C语言表达式是____
14、A.a=10a=0B.a=10|a=0C.a=10ora=0D.a=10||a=
015、判别“c是英文字母”的C语言表达式是____A.’a’=cc=’z’||’A’=cc=’Z’B.’a’=cc=’z’’A’=cc=’Z’C.’a’=c||c=’z’||’A’=c||c=’Z’D.’a’=c||c=’z’’A’=c||c=’Z’
16、已知charc1
[10]c2[]=”china”;若要把数组c2内的字符串全部赋值给数组c1则方法是____
17、A.c1=c2B.strcpyc1c2C.c1=”china”D.c1={“china”}
18、已知定义了inta
[3]
[4];则下列引用数组元素正确的方法是____
19、A.a
[3]
[4]B.a
[3]
[3]C.a[2*1][1*2]D.a
[2]
[4]
20、已知定义了inta
[3]
[4],则计算“元素a
[1]
[2]的地址”的表达式中,错误的是____
21、A.a
[1]
[2]B.a
[0]
[0]+1*4+2C.*a
[1]
[2]D.a
[1]+
222、已知inta=8b=5;则表达式a/b的值是____A.B.int型数值1C.int型数值2D.浮点型数
1.6E.浮点型数
123、已知floatx;且已给x确定的值,则表达式intx*100+
0.5/
100.0的含义是____
24、A.x值四舍五入至小数点后3位的值B.x值五舍六入至小数点后3位的值C.x值四舍五入至小数点后2位的值D.x值五舍六入至小数点后2位的值
25、表达式012:3的值是____
26、A.0B.1C.2D.
327、语句break;的功能是____A.从if语句中跳出B.从结构化循环语句或switch语句中跳出1层C.从一个函数中跳出,结束一个函数的运行D.从一个程序中跳出,结束一个程序的运行
28、C语言的语法规则规定,结构化循环语句的循环体必须是____A.B.一个语句C.一个复合语句D.一个表达式E.多个语句
29、C语言程序中引用一维数组的数组名时,它代表____A.B.该数组的全体元素的值C.该数组的元素的个数D.该数组的起始元素的地址E.该数组的起始元素的值
30、已定义inta
[2]
[3]={123456};则a
[1]
[1]的值是____A.B.1C.3D.5E.
631、表达式int
3.6+
8.9的值是____A.整型值11B.整型值12C.浮点型值
12.5D.浮点型值
11.
932、调用库函数____时,需要2个数值型实参A.B.getsC.sqrtD.strcmpE.pow
33、调用库函数____时,需要1个地址型实参A.B.getsC.sqrtD.strcmpE.pow
34、运算符的排列符合优先级由高到低的顺序的是____A.B.+类型C..!+=D..%++/E.[]||-
35、下列运算符的结合性,特殊的一个是____A.B.C.D.=E.
36、已知函数intfintint的功能是返回两个形参所得到值的平均值,则函数嵌套调用f2f3f45的值是____A.B.2C.3D.4E.
537、已知intki;则循环语句fork=i=0;i=10;i++k++;运行结束后i、k的值分别是____A.1010B.1110C.1011D.
111138、已知inta[]={112233445566778899}*p=a;则*p+3的含义是____
39、A.a
[0]的值加3,即14B.a
[3]的值,即44C.a
[3]的值,即33D.a
[2]的值,即
3340、假设有doublea
[10]
[5];则关于二维数组a中地址的计算,错误的是____A.a表示二维数组a的起始行的行地址B.a
[0]
[0]表示二维数组a的起始元素的地址C.a
[0]
[0]+20表示元素a
[4]
[0]的地址D.a+3表示元素a
[3]
[0]的地址
41、关于变量定义的概念,以下叙述错误的是____A.在函数外部定义的变量,称为外部变量;如果外部变量定义在程序开始处,则为全局变量B.定义各函数时,不同函数内部定义的变量不可以同名,否则编译通不过C.函数的内部、外部可以同时定义同名的变量,它们表示不同的变量D.如果一个函数内有内部变量与外部变量同名,则在这个函数内部对这个名称的变量引用时,使用的是内部变量
42、函数f的功能是____intfinta[]intn{intisum;fori=sum=0;in;i++sum+=a[i];returnsum;}A.返回a数组的长度B.返回a数组的前n个元素的和C.返回a数组的前n个元素的平均值D.返回a数组的前n个元素的最大值
2、看程序写运行结果每题5分,共15分,请将答案回答在卷首答题处
1、下一程序运行时若输入123回车、ABC回车,则输出结果是__________#includestdio.h#includeconio.h#includestring.hvoidmainvoid{chara
[100]b
[50]k;getsa;getsb;k=strlena;a[k]=’’;/*赋值1个空格*/strcpya[k+1]b;putsa;getch;/*停顿*/}
2、函数递归调用问题调用下一函数f时若给与实参1234,则该函数的返回值是__________intfinta{intb;ifa0b=-1;elseifa10b=a;elseb=fa/10+a%10;/*a/10a去掉个位剩余的部分;a%10a的个位*/returnb;}
3、下一程序段运行时的输出结果是__________struct{inta;doubleb;}x={12}y={34}z
[10]={56}*p=z;printf”%.0f”x.a+y.b+p-a;
3、综合题每题5分,共15分,请将答案回答在卷首答题处
1、下图是一个算法N-S图,主要功能是将数组a内n个元素排成升序,请将排序中缺少的一步操作阴影框内补充完整
2、下一程序是一个将百分制分数转换为A、B、C、D、E等级制的程序,转换细则如下表请将程序补充完整百分制分值等级制等级=90A80-89B70-79C60-69D=59E#includestdio.h#includeconio.hvoidmainvoid{inta;charc;scanf”%d”a;a/=10;ifa9a=9;switcha{case9:c=’A’;break;case8:c=’B’;break;case7:c=’C’;break;case6:c=’D’;break;___________________}printf”%c”c;getch;/*停顿*/}
3、下一程序的功能是将键入的字符串保存到文件d:盘abc文件夹
111.txt文件中,直到字符#为止请将程序行号S1~S8中的2句错误修改正确(请按卷首答题处要求填空)#includestdio.h#includeconio.hvoidmain{S1:FILE*fp;S2:charc;S3:fp=fopend:\\abc\\
111.txtw;S4:c=getch;putcharc;S5:whilec!=#{S6:fputccfp;S7:c=getch;putcharc;}S8:fclose;getch;}
4、编程题10分,请将答案回答在卷首答题处编一个程序,输出所有的“水仙花数”(所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身)。