C语言的主要特点有哪些Word文档下载推荐.docx
《C语言的主要特点有哪些Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《C语言的主要特点有哪些Word文档下载推荐.docx(61页珍藏版)》请在冰点文库上搜索。
{intsum;
sum=10+15;
printf("
sum=%d\n"
sum);
resultis25\n"
);
}
这段程序中常量有:
A.10B.sumC.15D.25E.mainF.PI
6.C语言中整形常量按进制划分,有以下几种:
A.十六进制常量B.十进制常量C.八进制常量D.二进制常量
7.75的十六进制写法为___,八进制写法为___。
0x75的八进制写法为___,十进制写法为___。
075的十进制写法为___,十六进制写法为___。
8.如果要把常量327存入变量a中,a可以定义成哪些类型?
A.intB.charC.longD.float
9.下面哪些写法是对的,而且是常量?
A.125B.-.456C.1.25e20D.'
AB'
E.E6F.0238G.0xabcdefH."
\n\\\'
\123"
10.下面哪个表达式的值为4.(单选)
A.11/3B.11.0/3C.(float)11/3D.(int)(11.0/3+0.5)
11.已知整型变量a=6,b=7,c=1,则下面表达式的值为多少?
a+3___
(b-a*3)/5___
c*(a+b)+b*(c+a)___
3.2*(a+b+c)___
12.已知整型变量a=6,字符型变量ch='
A'
浮点数变量f=2.1,则下面表达式的值为多少?
(提示:
'
的ASCII码为65)
a+4.5___
ch+a+f___
(a+30)/5___
(a+30)/5.0___
13.指出下面错误的表达式:
A.a+b=5B.56=a11C.i=i++D.5.6+6.2%3.1E.12F.a=5,b=6,c=7
14.若变量f已说明为float类型,i为int类型,则下面哪些表达式(或语句)能够实现将f中的数值保留小数点后两位,第三位进行四舍五入的运算?
A.f=(f*100+0.5)/100.0B.i=f*100+0.5,f=i/100.0;
C.f=(int)(f*100+0.5)/100.0;
D.f=(f/100+0.5)*100.0;
15.下面哪些是非法的C语言转义字符?
A.'
\t'
B.'
\08'
C.'
\0xaf'
D.'
\\'
16.若有以下说明语句:
chars='
\\\092'
;
则下面哪一项是正确的.
A.使s的值包含2个字符B.说明语句不合法
C.使s的值包含6个字符D.使s的值包含4个字符
17.请从下面的选项中选出正确的C语言的转义字符。
A.'
//'
\'
\n'
E.'
\1011'
F.'
/018'
G.'
/123'
H.'
\xaa'
18.在C语言中(以16位PC机为例),5种基本数据类型的存储空间长度的排列顺序为
A.char<
int<
1ongint<
=float<
doubleB.char=int<
double
C.char<
int<
1ongint=float=doubleD.char=int=1ongint<
19.若x,i,j和k都是int型变量,则执行下面表达式后x的值为C
x=(i=4,j=16,k=32)
A.4B.16C.32D.52
20.假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是:
A.7B.8C.6D.2
21.下列四组选项中,均不是C语言关键字的选项是
A.defineB.getcC.includeD.while
IFcharscanfgo
typeprintfcasepow
22.下面四个选项中,均是C语言关键字的选项是
A.autoB.switchC.signedD.if
enumtypedefunionstruct
includecontinuescanftype
23.下面四个选项中,均是不合法的用户标识符的选项是。
A.AB.floatC.b-aD._123
P_01a0gototemp
do_AintINT
24.C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符
A.必须为字母B.必须为下划线
C.必须为字母或下划线D.可以是字母,数字和下划线中任一种字符
25.下面四个选项中,均是合法转义字符的选项是
\018'
\\0'
'
\017'
\f'
101'
\"
xab'
xlf'
26.下面四个选项中,均是不合法的转义字符的选项是
\011'
\abc'
\101'
\xf'
\a'
\}'
27.下面正确的字符常量是:
A."
a"
W'
28.已知各变量的类型说明如下:
intk,a,b;
unsignedlongw=5;
doublex=1.42;
则以下不符合C语言语法的表达式是:
A.x%(-3)B.w+=-2C.k=(a=2,b=3,a+b)D.a+=a-(b=4)*(a=3)
29.已知各变量的类型说明如下:
inti=8,k,a,b;
unsignedlongw=5;
doublex=1.42,y=5.2;
则以下符合C语言语法的表达式是:
A.a+=a-=(b=4)*(a=3)B.a=a*3=2C.x%(-3)D.y=f1oat(i)
30.以下不正确的叙述是
A.在C程序中,逗号运算符的优先级最低
B.在C程序中,APH和aph是两个不同的变量
C.若a和b类型相同,在执行了赋值表达式a=b后b中的值将放人a中,而b中的值不变。
D.当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值。
31.以下符合C语言语法的赋值表达式是
A.d=9+e+f=d+9B.d=9+e,f=d+9C.d=9+e,e++,d+9D.d=9+e++=d+7
32.已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2='
+'
6'
-'
3'
后,c2中的值为
A.DB.68C.不确定的值D.C
33.在C语言中,要求运算数必须是整型的运算符是。
A./B.++C.!
=D.%
34.若以下变量均是整型,且num=sum=7;
则执行表达式sUM=num++,sUM++,++num后sum的值为
A.7B.8C.9D.10
35.若有定义:
inta=7;
floatx=2.5,y=4.7;
则表达式x+a%3*(int)(x+y)%2/4的值是
A.2.500000B.2.7500OOc3.500000D.0.000000。
sizeof(float)是:
A.一个双精度型表达式B.一个整型表达式C.一种函数调用D.一个不合法的表达式
36.设变量a是整型,f是实型,i是双精度型,则表达式10+'
a'
+i*f值的数据类型为
A.intB.floatC.doubleD.不确定
37.在C语言中,char型数据在内存中的存储形式是:
A.补码B.反码C.原码D.ASCII码
38.设C语言中,一个int型数据在内存中占2个字节,则unsignedint型数据的取值范围为:
A.0~255B.0~32767C.0~65535D.0~2147483647
39.putchar函数可以向终端输出一个:
A.整型变量表达式值B.实型变量值C.字符串D.字符或字符型变量值
40.printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列。
如果字符串长度大于5,则输出按方式
A.从左起输出该字串,右补空格B.按原字符长从左向右全部输出
C.右对齐输出该字串,左补空格D.输出错误信息
41.设x、y均为f1oat型变量,则以下不合法的赋值语句是
A.++x;
B.y=(x%2)/10;
C.x*=y+8;
D.x=y=0;
42.x,y,z均为int型变量,则执行语句x=(y=(z=10)+5)-5;
后,x、y和Z的值是:
A.x=10B.x=10C.x=10D.x=10
y=15y=10y=10y=5
z=10z=10z=15z=10
43.逻辑运算符两侧运算对象的数据类型是:
A.只能是0或1B.只能是0或非0正数
C.只能是整型或字符型数据D.可以是任何类型的数据
44.下列运算符中优先级最高的是:
A.<
B.+C.&
&
D.!
=
第三章习题
1.C程序的结构可分为哪几类?
A.顺序结构B.循环结构C.程序结构D.选择结构
2.该源程序执行后,屏幕上显示什么?
{inta;
floatb;
a=4;
b=9.5;
a=%d,b=%4.2f\n"
a,b);
A.a=%d,b=%f\nB.a=%d,b=%f
C.a=4,b=9.50D.a=4,b=9.5
3.若a为整型变量,且有以下语句___。
a=-017;
%d\n"
a);
则下面哪个说法是正确的?
A.赋值不合法B.输出值为-17
C.输出为不确定值D.输出值为-15
4.若k,g均为int型变量,则以下语句的输出为哪一项?
intk,g;
k=017;
g=111;
%d,"
k);
%x\n"
g);
A.15,6fB.f,6fC.f,111D.15,111
5.如这程序所示,如果运行时,输入18,18,那么b的值为多少?
{
inta,b;
scanf("
%d,%o"
&
a,&
b);
b+=a;
%d"
b);
A.36B.34C.输入错误,b的值不确定D.19
二、填空题
1.若要输出下列各种类型的数据,应使用什么转换说明符。
(答题请打上双引号)
字段宽度为4的十进制数应使用"
%4d"
字段宽度为6的十六进制数应使用___,八进制整数应使用___,字段宽度为3的字符应使用___,字段宽度为10,保留3位小数的实数应使用___,字段宽度为8的字符串应使用___。
2.读懂程序并填空。
#include<
stdio.h>
charch=0x31;
ch);
//屏幕显示___
%o\n"
%c\n"
3.以下程序输入三个整数值给a,b,c,程序把b中的值给a,把c中的值给b,把a中的值给c,然后输出a,b,c的值。
请填空。
main()
{___
inttemp;
Entera,b,c:
"
%d%d%d"
___);
___
a=b;
b=c;
a=%db=%dc=%d\n"
a,b,c);
4.输入两个实数a,b,然后交换它们的值,最后输出(提示:
要交换两个数得借助一个中间变量temp。
首先让temp存放a的值,然后把b存入a,再把temp存入b就完成了)。
floata,b,temp;
请输入a和b的值:
%d,%d"
temp=a;
交换后,a=%d,b=%d\n"
第四章习题
1.假设所有变量均已说明,写出下列各程序段运行后x的值。
ok1=1;
ok2=2;
ok3=0;
x=15;
a=3;
b=4;
(1)if(!
ok1)
x++;
elseif(ok2)
if(ok3)
x=3;
else
x=4;
运行后x的值为下面哪一个?
A.15B.3C.16D.4
(2)if(ok1)
if(a<
b)
if(!
ok3)
x=0;
else
x=1;
x=2;
A.0B.1C.2D.3
2.在C语言的if语句中,用作判断的表达式为___。
A.关系表达式B.逻辑表达式
C.算术表达式D.任意表达式
3.请问:
下面这个程序段的输出是什么?
inta,b,c;
a=7;
b=8;
c=9;
if(a>
a=b,b=c;
c=a;
A.a=7b=8c=7B.a=7b=9c=7
C.a=8b=9c=7D.a=8b=9c=8
4.该程序的运行结果是:
a=2;
b=7;
c=5;
switch(a>
0)
case1:
switch(b<
10)
printf("
^"
break;
case0:
!
switch(c==5)
*"
#"
default:
%%"
\n"
A.^#&
B.^C.&
D.^!
*#%&
5.能正确表示"
当x的取值在[1,10]和[200,210]范围内为真,否则为假"
的表达式是
A.(x>
=1)&
(x<
=10)&
(x>
=200)&
=210)
B.(x>
=1)||(x<
=10)||(x>
=200)||(x<
C.(x>
=10)||(x>
=200)&
D.(x>
=1)||(x<
=10)&
(x>
=200)||(x<
6.判断char型变量ch是否为大写字母的正确表达式是
A'
<
=ch<
='
Z'
B.(ch>
='
)&
(ch<
Z'
)
C.(ch>
)&
)D.('
=ch)AND('
>
=ch)
7.设x,y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0的是
y'
B.x<
=yC.x||y+z&
y-zD.!
y)&
z||1)
8.若希望当A的值为奇数时,表达式的值为"
真"
A的值为偶数表达式的值
为"
假"
。
则以下不能满足要求的表达式是:
A.A%2==1B.!
(A%2==0)C.!
(A%2)D.A%2
9.以下程序的运行结果是:
#include"
stdio.h"
main()
{inta,b,d=241;
a=d/100%9
b=(-1)&
(-1);
a,b);
}
A.6,1B.2,1C.6,0D.2,0
10.执行以下语句后a的值为:
inta,b,c;
a=b=c=1;
++a||++b&
++c
A.错误B.0C.2D.1
11.以下不正确的if语句形式是:
A.if(x>
y&
x!
=y);
B.if(x==y)x+=y;
C.if(x!
=y)scanf("
x)elsescanf("
y);
D.if(X<
Y){X++;
Y++;
12.以下程序的运行结果是:
main()
{intm=5;
if(m++>
5)printf("
%d\n"
m);
e1seprintf("
m--);
A.4B.5C.6D.7
1.当a,b,c的值分别为3,4,5时,以下各语句执行后a,b,c的值为多少?
(1)if(a>
c)
{a=b;
b=c;
{a=c;
c=b;
b=a;
执行后a,b,c的值为___,___,___
(2)if(a<
a=c;
a=b;
(3)if(a!
=c);
2.当a=3,b=4,c=5时,写出下列各式的值。
a<
b的值为___,a<
=b的值为___,
a==c的值为___,a!
=c的值为___,
a&
b的值为___,!
a&
b的值为___,
a||c的值为___,!
a||c的值为___,
a+b>
c&
b==c的值为___。
3.若整数x分别等于95、87、100、43、66、79,则以下程序段运行后屏幕显示是什么?
switch(x/10)
{case6:
case7:
Pass\n"
break;
case8:
Good\n"
case9:
case10:
VeryGood\n"
Fail\n"
x等于95时,程序段运行后屏幕上显示___
x等于87时,程序段运行后屏幕上显示___
x等于100时,程序段运行后屏幕上显示___
x等于43时,程序段运行后屏幕上显示___
x等于66时,程序段运行后屏幕上显示___
x等于79时,程序段运行后屏幕上显示___
4.下面这个程序要求用户输入两个整数和一个字符。
字符必须是'
、'
*'
/'
其中的一个。
然后程序输出两数作相应运算的结果。
例如:
输入123,34,+程序输出123+34=157。
#include<
voidmain()
{
floatd1,d2,result;
charop;
interror=0;
%f,%f,%c"
d1,&
d2,&
op);
switch(op)
case'
:
result=___;
default:
error=1;
if(error)
运算操作符输入有错!
pri