一、选择题
1、可以在C语言中使用的一组用户标识符是( )。 A、3B sizeof DO B、 ab34 c1_c2 _for C、_123 t2_a1_ printf D、void 6b hat
2、以下均是字符常量或数值常量的选项是( )。 A、0.0 0f 8.9e ‘&’ B、”A” 3.9e-2.5 1e1 C、’3’ 011 0xff00 0a D、 0xabcd 2e3 50. 3、以下选项中正确的实型常量是( )。 A、 0 B、0.618*10 C、 567 D、3.1415
4、将汇编语言编写的程序翻译为目标程序的是( )程序。 A、解释 B、编译 C、汇编 D、目标 5、不属于面向机器的语言是( )。
A、符号语言 B、机器语言 C、汇编语言 D、C语言 6、程序段的基本结构中,不包含( )。
A、函数结构 B、循环结构 C、顺序结构 D、分支结构 7、下列符号中,不属于转义字符的是( )。 A、 \\\\ B、\\0xaa C、\\0 D、\\t 8、正确的C语言标识符是( )。
A、 _sum_1 B、1_sum C、?_sum D、sum? 9、增1减1运算只能作用于( )。
A、 常量 B、变量 C、表达式 D、函数 10、设“int a=2,b=2;”,则++a+b的结果是( ),a的结果是( b的结果是( )。
A、2 B、3 C、4 D、5
11、下列运算符中优先级最高级的是( )。 A、++ B、% C、* D、=
12、设“int a=2;”,则表达式“(a++*1/3)”的值是( ),a的值是(A、0 B、1 C、2 D、3
13、字符数据在内存中的存储代码采用的是( )。
A、反码 B、补码 C、EBCDIC码 D、ASC II码 14、char a; int b; float c; double d;
则表达式a*b+d-c值的类型为( )。 A、int B、float C、double D、char
1
,)。)
15、字符串”\\”\\123\\n\\321a”的长度是( )。 A、1 B、5 C、9 D、13
16、下列常量中,不属于字符常量的是( )。 A、’\\1x’ B、’0’ C、’\\’’ D、’\\n’ 17、语句printf(\);的输出结果是 A. a\\bre\\'hi\\'y\\\\\\bou B. a\\bre\\'hi\\'y\\bou C. re'hi'you D. abre'hi'y\\bou
18、设整型变量k的值为011,下列表达式中值不为1的是( )。 A、k%8 B、k/8 C、++k-8 D、k++-8
19、设整型变量m的值为2,则执行printf(\ printf(\后的结果是( )。 A、-1,2 B、0,2 C、3,3 D、2,3
20、整型变量x、y和z已定义并已赋值,下列表达式正确的是( )。 A、x=5++ B、5=x++ C、x=y=z==x D、x=y+1=z
21、设整型变量m的值为8,则表达式“m-=m+=m*=m/=m”的值是( )。 A、8 B、1 C、0 D、-1
22、设有整型变量x、y和z,则下列表达式中不属于逗号表达式的是( )。
A、x>y,z=0 B、x,y=z C、x++,(y,z) D、x=(y,z)
23、在C语言数据类型转换原则中,以下错误的是( )。
A、 若+、-、*、/运算的两个数中有一个数为实型,则结果为实型。 B、如果int型与double型数据进行运算,结果是double型。
C、char型与int型进行运算,把字符型数据的ASCII码与整型数据进行运算,结果为整型。
D、char型与int型进行运算,运算结果为char型。
24、设有整型变量x和单精度型变量y,最终运算结果不是单精度型的表达式是( )。 A、(int)y+x B、(int)x+y C、(float)y+x D、(float)x+y 25、若已定义x和y为double类型,则表达式:x=1,y=x+3/2的值是( )。
A、 1 B、 2 C、 2.0 D、 2.5
26、以下叙述正确的是( )。
A、在C程序中无论是整数还是浮点数,只要允许的范围内都准确无
2
误地表示。
B、若有“double a,b;”定义,可以直接执行语句“a=b+3.456;”因为b已正确定义。
C、在C语言中,常量、变量、函数调用都是表达式的一种
D、在main函数中,一旦定义一个变量,系统将自动赋给它初值。 27、以下选项中,不正确的赋值语句是( )。
A、 i++; B、 i+=7; C、x+y=z; D、y=(int)x+4; 28、以下选项中不是C语言语句的是( )。 A、{int i=1; i++; } B、; C、 k=5,a=10 D、{ ; ;}
29、设整形变量n的值为9,下列表达式中值为1的表达式是( )。 A、!n B、!n>1 C、!n!=1 D、!n!==1
30、不能正确表达数学中逻辑关系“y在x和z之间(x A、(x 31、设整形变量m和n的值均为1,计算表达式“(m=m!=n)&&(n=m==n)”后,m和n的值是( )。 A、1,1 B、1,0 C、0,1 D、0,0 32、设整形变量x的值为8,则表达式“x>5?x++:--x” 的值是( )。 A、9 B、8 C、7 D、1 33、设有整形变量m,n和k的值均为6,则表达式“n=k=++m,m=n!=k”的值是( )。 A、0 B、1 C、6 D、7 34、下列表达式中,值不为4的表达式是( )。 A、sizeof(double) B、sizeof(float) C、sizeof(long) D、sizeof(unsigned long) 35、能判断整形变量m是偶数的正确表达式是( )。 A、m/2 B、m%2 C、m%2 !=0 D、m%2 ==0 36、设字符型变量ch的值为’A’,整型变量m的值为1,假定执行ch=getchar();m=getchar();时,从键盘输入B<回车>,则变量ch和m的值分别为( )。 A、’A’和’1’ B、’B’和’1’ C、’B’和 ‘□’ D、’B’和’\\n’ 3 (注:□表示空格) 37、设字符型变量ch的值为’A’,整型变量m的值为’1’,假定执行putchar(m); putchar(‘□‘); putchar(ch);后,则输出结果是( )。 A、A1 B、1A C、A□1 D、1□A 38、设整型变量a和b的值分别为8和9,printf(“%d,%d”,(a++,++b),b--);的输出是( )。 A、8,8 B、8,7 C、9,9 D、10,9 39、设有下列程序段,则其正确的输出是( )。 int x=011,y=0x11; printf(“x=%-3dy==”,x,y); A、□□917□ B、x=9□□y=□17 C、x=□□9y=17□ D、x=11y=x11 40、运行下列程序的输出是( )。 main() {char ch=’B’; printf(“%c%d”,ch,ch++); } A、C65 B、B65 C、B66 D、C66 41、若a、b、c均为int类型,要给a、b、c输入数据,正确的输入语句是( )。 A、read(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); 42、以下程序,输入ABC<回车>后,执行结果是( )。 main() {char c; scanf(“<”,&c); printf(“%c\\n”,c); } A、 ABC B、A C、B D、C 43、以下程序( )。 main() {int x=0,y=0,z=0; if (x=y+z) printf(“******\\n”); else printf(“######\\n”); 4 } A、有语法错误,不能编译通过 B、输出****** C、可以通过编译,但不能通过连接,因此不能运行 D、输出###### 44、以下程序输出结果为( )。 main() { int a=2,b=-1,c=2; if (a if (b<0) c=0; else c+=1; printf(“%d\\n”,c); } A、0 B、1 C、2 D、3 45、以下程序输出结果为( )。 main() { int a=2,b=-1,c=2; if (a {if (b<0) c=0;} else c+=1; printf(“%d\\n”,c); } A、0 B、1 C、2 D、3 46、以下( )为不正确的if语句。 A、if (x B、if (x!=y) scanf(“%d”,&x) else scanf(“%d”,&y); C、if (x==y) x+=y; D、if (x 47、若执行以下程序时从键盘输入5,则输出结果为( main() { int x; scanf(“%d”,&x); if (x++<5) printf(“%d\\n”,x); else printf(“%d\\n”,x--); } A、7 B、6 C、5 D、4 5 。 )
C语言程序设计题库附答案
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)