C语言习题.docx
- 文档编号:8955851
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:28
- 大小:30.25KB
C语言习题.docx
《C语言习题.docx》由会员分享,可在线阅读,更多相关《C语言习题.docx(28页珍藏版)》请在冰豆网上搜索。
C语言习题
考试题型:
单项选择:
1*40=40分
概念填空题:
2*5=10分
读程序,写结果:
2*10=20分
程序填空:
2*10=20分
编写程序:
10分(4+6)
一、单项选择
1.一个C语言程序是由(A)。
A.函数组成B.一个主程序和若干子程序组成
C.若干过程组成D.若干子程序组成
2.在C语言中,复合语句(D)。
A.必须出现在循环或分支中B.必须包含多条语句
C.必须使用{}将有关语句括起来D.以上三种都对
3.以下叙述不正确的是(D)。
A.一个C源程序可由一个或多个函数组成
B.一个C源程序必须包含一个main函数
C.C程序的基本组成单位是函数
D.在C程序中,注释说明只能位于一条语句的后面
4.C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符(D)。
A.必须为字母B.可以是字母、数字和下划线中任一种字符
C.必须为下划线D.必须为字母或下划线
5.下面不正确的字符串常量是(A)。
A.‘abc’B.“12’12”C.“0”D.“ ”
6.下面正确的字符常量是(C)。
A."c"B."\\"C.'W'D.''
7.以下表达式值为3的是(B)。
A.16-13%10B.2+3/2
C.14/3-2D.(2+6)/(12-9)
8.下列表达式的值为0的是(c)。
A.3<5B.3/5.0C.3/5D.3%5
9.若有代数式3ae/(bc),则不正确的C语言表达式是(D)。
A.a/b/c*e*3B.3*a*e/b/c
C.3*a*e/b*cD.a*e/c/b*3
10.在C语言中,要求运算数必须是整型的运算符是(D)。
A./B.++C.!
=D.%
11.若x、i、j和k都是int型变量,则执行下面表达式后x的值为(c)。
x=(i=4,j=16,k=32)
A.4B.16C.32D.52
12.执行表达式a=12,a=a+13,a+20后a的值为(C)。
A.45B.12C.25D.13
13.设intx=1,y=2,z=3;,则表达式x==z||x+y>z的值是(B)。
A.0B.1C.2D.3
14.已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2=‘A’+‘6’-‘3’;后,c2中的值为(a)。
A.DB.EC.不确定的值D.C
15.设有说明:
charw;intx;floaty;doublez;则表达式w*x+z-y值的数据类型为(c)。
A.intB.floatC.doubleD.char
16.设变量a是整型,f是实型,i是双精度型,则表达式10+a+i*f值的数据类型为(C)。
A.intB.floatC.doubleD.不确定
17.printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列。
如果字符串长度大于5,则输出按方式(B)。
A.从左起输出该字串,右补空格
B.按原字符长从左向右全部输出
C.右对齐输出该字串,左补空格
D.输出错误信息
18.putchar函数可以向终端输出一个(D)。
A.整型变量表达式值B.实型变量值
C.字符串D.字符
19.若a,b,c均定义为int型,则输入函数采用scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);格式时,其输入数据的正确格式是(C)。
A.12,24,36B.122436
C.a=12,b=24,c=36D.a=12b=24c=36
20.已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A和B,当从第一列开始输入数据时,正确的数据输入方式是(B)。
inta1,a2;charc1,c2;
scanf(“%d%d”,&a1,&a2);
scanf(“%c%c”,&c1,&c2);
A.1020AB<回车>B.1020<回车>AB<回车>
C.1020AB<回车>D.1020AB<回车>
21.有输入语句:
scanf(“%d%d%d”,&a,&b,&c);为使变量a的值为1,b为3,
c为2,从键盘输入数据的正确形式应当是(C)。
(_表示空格)"
A.132<回车>B.1,3,2<回车>
C.132<回车>D.a=1,b=3,c=2<回车>
22.以下说法正确的是(D)。
A.输入项可以为一实型常量,如scanf(“%f”,3.5);
B.只有格式控制,没有输入项,也能进行正确输入,如scanf(“a=%d,b=%d”);
C.当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf(“%4.2f”,&f);
D.当输入数据时,必须指明变量的地址,如scanf(“%f”,&f);
23.以下能正确地定义整型变量a,b和c并为其赋初值5的语句是(C)。
A.inta=b=c=5;B.inta,b,c=5;
C.inta=5,b=5,c=5;D.a=b=c=5;
24.若有以下定义,则正确的赋值语句是(D)。
inta,b;floatx;
A.a=1,b=2B.b++;C.a=b=5D.b=int(x);
25.逻辑运算符两侧运算对象的数据类型(D)。
A.只能是0或1B.只能是0或非0正数
C.只能是整型或字符型数据D.甚至可以是实型和指针类型的数据
26.以下关于运算符优先顺序的描述中正确的是(C)。
A.关系运算符<算术运算符<赋值运算符<逻辑与运算符
B.逻辑与运算符<关系运算符<算术运算符<赋值运算符
C.赋值运算符<逻辑与运算符<关系运算符<算术运算符
D.算术运算符<关系运算符<赋值运算符<逻辑与运算符
27.判断char型变量c1是否为小写字母的正确表达式是(D)。
A.‘a’<=c1<=‘z’B.(c1>=a)&&(c1<=z)
C.(‘a’>=c1)||(‘z’<=c1)D.(c1>=‘a’)&&(c1<=‘z’)
28.判断char型变量c1是否为大写字母的正确表达式是(D)。
A.‘A’<=c1<=‘ZB.(c1>=A)&&(c1<=Z)
C.(‘A’>=c1)||(‘Z’<=c1)D.(c1>=‘A’)&&(c1<=‘Z’)
29.表示图中坐标轴上阴影部分的正确表达式是(C)。
////////
////////
X
abc
A.(x<=a)&&(x>=b)&&(x<=c)
B.(x<=a)||(b<=x<=c)
C.(x<=a)||(x>=b)&&(x<=c)
D.(x<=a)&&(b<=x<=c)
30.若希望当A的值为奇数时,表达式的值为“真”,A的值为偶数时,表达式的值为“假”,则以下不能满足要求的表达式是(C)。
A.A%2==1B.!
(A%2==0)C.!
(A%2)D.A%2
31.设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0的是(D)。
A.‘x’&&‘y’B.x<=y
C.x||y+z&&y-zD.!
((x z||1) 32.已知x=43,y=0,ch=‘A’;则表达式(x>=y&&ch<‘B’&&! y)的值是(C)。 A.0B.语法错C.1D.“假” 33.执行以下语句后a的值为(B)。 inta=5,b=6,w=1,x=2,y=3,z=4; (a=w>x)&&(b=y>z); A.5B.0C.2D.1 34.以下程序的运行结果是(B)。 #include“stdio.h” main() { inta,b,d=241; a=d/100%9; b=(-1)&&(-1); printf(“%d,%d”,a,b); } A.6,1B.2,1C.6,0D.2,0 35.以下if语句语法正确的是(B)。 A.if(x>0)printf(“%f”,x) elseprintf(“%f”,-x); B.if(x>0) {x=x+y;printf(“%f”,x);} elseprintf(“%f”,-x); C.if(x>0) {x=x+y;printf(“%f”,x);}; elseprintf(“%f”,-x); D.if(x>0) {x=x+y;printf(“%f”,x)} elseprintf(“%f”,-x); 36.为了避免在嵌套的if-else中产生二义性,C语言规定: else子句总是与(B)配对。 A.缩排位置相同的ifB.其之前最近的if C.其之后最近的ifD.同一行上的if 37.以下不正确的if语句形式是(A)。 A.if(x>y&&x! =y);B.if(x==y)x+=y; C.if(x! =y)scanf(“%d”,&x)elsescanf(“%d”,&y);D.if(x 38.已知intx=10,y=20,z=30;以下语句执行后x,y,z的值是(B)。 if(x>y)z=x;x=y;y=z; A.x=10,y=20,z=30B.x=20,y=30,z=30 C.x=20,y=30,z=10D.x=20,y=30,z=20 39.设有定义intx=1;inty=‘a’<‘A’? x--: x++;,则变量y的值是(C)。 A.0B.1C.2D.3 40.设intx=1,a=9,b=6,c=7,d=8;则执行语句: if(a>b)if(c>d)x=2;elsex=3;后,x的值是(C)。 A.不确定B.2C.3D.1 41.若有以下定义,则能使值为3的表达式是(D)。 intk=7,x=12; A.x%=(k%=5)B.x%=(k-k%5)C.x%=k-k%5D.(x%=k)-(k%=5) 42.设以下变量均为int类型,则值不等于7的表达式是(C)。 A.(x=y=6,x+y,x+1)B.(x=y=6,x+y,y+1) C.(x=6,x+1,y=6,x+y)D.(y=6,y+1,x=y,x+1) 43.有一函数关系见下表: x y= x<0 x-1 x=0 x x>0 x+1 下面程序段中能正确表示上面关系的是(C)。 A.y=x+1;B.y=x-1; if(x>=0)if(x! =0) if(x==0)y=x;if(x>0)y=x+1; elsey=x-1;elsey=x; C.if(x<=0)D.y=x; if(x<0)y=x-1;if(x<=0) elsey=x;if(x<0)y=x-1; elsey=x+1;elsey=x+1; 44.以下程序的输出结果是(B)。 main() { intx=2,y=-1,z=2;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 习题