《C语言程序设计》练习测试题及答案
一、选择题(下列各题有四个选项,只有一个答案是正确的,请选出正确选项) 1.一个C程序的执行是从 。
A) 本程序的main函数开始,到main函数结束
B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C) 本程序的main函数开始,到本程序文件的最后一个函数结束 D) 本程序文件的第一个函数开始,到本程序main函数结束
2.以下叙述正确的是 。
A) 在C程序中,main函数必须位于程序的最前面 B) C程序的每行中只能写一条语句 C) C语言本身没有输入输出语句
D) 在对一个C程序进行编译的过程中,可发现注释中的拼写错误
3.以下叙述不正确的是 。
A) 一个C源程序可由一个或多个函数组成 B) 一个C源程序必须包含一个main函数 C) C程序的基本组成单位是函数
D) 在C程序中,注释说明只能位于一条语句的后面
4.C语言规定:在一个源程序中,main函数的位置 。
A) 必须在最开始
B) 必须在系统调用的库函数的后面 C) 可以任意 D) 必须在最后
5.一个C语言程序是由 。
A) 一个主程序和若干子程序组成 B) 函数组成 C) 若干过程组成 D)若干子程序组成
6.在C语言中(以16位PC机为例),5种基本数据类型的存储空间长度的排列顺序
为 。
A) char 7.若x、i、j和k都是int型变量,则执行下面表达式后x的值为 。 x=(i=4,j=16,k=32) A)4 B)16 C)32 D)52 8.假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是 。 A)7 B)8 C)6 D)2 9.下列四组选项中,均不是C语言关键字的选项是 。 A) define IF type B) getc char printf C) include scanf case D) while go pow 10.下列四个选项中,均是C语言关键字的选项是 。 A) auto enum include B) switch typedef continue C) signed union scanf D) if struct type 11.下面四个选项中,均不合法的用户标识符的选项是 。 A) A P_0 do B) float la0 _A C) b-a goto int D) _123 temp INT 12.C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符 。 A) 必须为字母 B) 必须为下划线 C) 必须为字母或下划线 D) 可以是字母、数字和下划线中任一种字符 13.下面四个选项中,均是合法整型常量的选项是 。 A) 160 -0xffff 011 B) -0xcdf 01a 0xe C) -01 986,012 0668 D) -0x48a 2e5 0x 14.下面四个选项中,均是不合法的整型常量的选项是 。 A) --0f1 -0xffff 0011 B) -0Xcdf 017 12,456 C) -018 999 5e2 D) -0x48eg -068 03f 15.下面四个选项中,均是不合法的浮点数的选项是 。 A) 160. 0.12 e3 B) 123 2e4.2 .e5 C) -.18 123e4 0.0 D) -e3 .234 1e3 16.下面四个选项中,均是合法浮点数的选项是 。 A) +1e+1 5e-9.4 03e2 B) -.60 12e-4 -8e5 C) 123e 1.2e-.4 +2e-1 D) -e3 .234 5.e-0 17.下面四个选项中,均是合法转义字符的选项是 。 A) ‘\\’’ ‘\\\\’ ‘\\n’ B) ‘\\’ ‘\\017’ ‘\\”’ C) ‘\\018’ ‘\\f’ ‘xab’ D) ‘\\\\0’ ‘\\101’ ‘x1f’ 18.下面四个选项中,均是不合法的转义字符的选项是 。 A) ‘\\”’ ‘\\\\’ ‘\\xf’ B) ‘\\1011’ ‘\\’ ‘\\a’ C) ‘\\011’ ‘\\f’ ‘\\}’ D) ‘\\abc’ ‘\\101’ ‘xlf’ 19.下面正确的字符常量是 。 A)“c” B) ‘\\\\’’ C) ‘W’ D) ‘’ 20.下面四个选项中,均是不正确的八进制数或十六进制数的选项是 。 A) 016 0x8f 018 B) 0abc 017 0xa C) 010 -0x11 0x16 D) 0a12 7ff -123 21.下面四个选项中,均是正确的八进制数或十六进制数的选项是 。 A) -10 0x8f -011 B) 0abc -017 0xc C) 0010 -0x11 0xf1 D) 0a12 -0x123 -0xa 22.下面四个选项中,均是正确的数值常量或字符常量的选项是 。 A) 0.0 0f 8.9e ‘&’ B) “a” 3.9E-2.5 1e1 ‘\\”’ C) ‘3’ 011 0xFF00 0a D) +011 0xabcd 2e2 50. 23.下面不正确的字符串常量是 。 A)‘abc’ B)“12’12” C)“0” D)“ ” 24.对应以下各代数式中,若变量a和x均为double类型,则不正确的C语言表达式 是 。 代数式 A) C语言表达式 exp(x*x/2)/sqrt(2*3.14159) e^(x^2/2)2?1?2?B) ?ax?a?x?? 4a? 1.0/2.0*(a*x+(a+x)/(4*a) C) (sinx)^2.5 D) x^2?e^5 25.若有代数式 sqrt((pow(sin(x*3.14159/180),2.5)) x*x-exp(5.0) 3ae,则不正确的C语言表达式是 。 bcA) a/b/c*e*3 B) 3*a*e/b/c C) 3*a*e/b*c D) a*e/c/b*3 26.已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A和B,当从第 一列开始输入数据时,正确的数据输入方式是 。 int a1,a2; char c1,c2; scanf(“%d%d”,&a1,&a2); scanf(“%c%c”,&c1,&c2); A)1020AB C)10 20 AB 27.已有程序段和输入数据的形式如下,程序中输入语句的正确形式应当为 。 main() { int a; float f; printf(“\\nInput number:”); 输入语句 printf(“\\nf=%f,a=%d\\n”,f,a); } Input number:4.5 2 A) scanf(“%d,%f”,&a,&f); B) scanf(“%f,%d”,&f,&a); C) scanf(“%d%f”,&a,&f); D) scanf(“%f%d”,&f,&a); 28.根据定义和数据的输入方式,输入语句的正确形式为 。 已有定义:float f1,f2; 数据的输入方式:4.52 3.5 A) scanf(“%f,%f”,&f1,&f2); B) scanf(“%f%f”,&f1,&f2); C) scanf(“%3.2f %2.1f”,&f1,&f2); D) scanf(“%3.2f%2.1f”,&f1,&f2); 29.阅读以下程序,当输入数据的形式为 25,13,10 A) x+y+z=48 B) x+y+z=35 C) x+z=35 D) 不确定值 30.阅读以下程序,若运行结果为如下形式,输入输出语句的正确内容是 。 main() { int x; float y; printf(“enter x,y:”); 输入语句 输出语句 } 输入形式 enter x,y:2 3.4 输出形式 x+y=5.40 A) scanf(“%d,%f”,&x,&y); printf(“\\nx+y=%4.2f”,x+y); B) scanf(“%d%f”,&x,&y); printf(“\\nx+y=%4.2f”,x+y); C) scanf(“%d%f”,&x,&y); printf(“\\nx+y=%6.1f”,x+y); D) scanf(“%d%3.1f”,&x,&y); printf(“\\nx+y=%4.2f”,x+y);