c语言程序基础练习题500道Word文档格式.docx
《c语言程序基础练习题500道Word文档格式.docx》由会员分享,可在线阅读,更多相关《c语言程序基础练习题500道Word文档格式.docx(116页珍藏版)》请在冰豆网上搜索。
![c语言程序基础练习题500道Word文档格式.docx](https://file1.bdocx.com/fileroot1/2023-1/3/f93e2d5a-de6e-4092-8d60-0127fd9992d3/f93e2d5a-de6e-4092-8d60-0127fd9992d31.gif)
;
则该语句(b)
A)使s的值包含一个字符B)定义不合法,s的值不确定
C)使s的值包含4个字符D)使s的值包含3个字符
10设C语言中,int类型数据占2个字节,则float类型数据占(D)个字节。
A)1B)2C)8D)4
11已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2='
A'
+'
6'
-'
3'
后,c2中的值为(A)。
A)DB)68C)不确定的值D)C
12逻辑运算符两侧运算对象的数据类型是(D)。
A)只是0或1B)只能是0或非0正数
C)只能是整型或字符型数据D)可以是任何合法的类型数据
13TURBOC中int类型变量所占字节数是(B)。
A)1B)2C)3D)4
14在C语言中,char型数据在内存中的存储形式是(D)。
A)补码B)反码C)原码D)ASCII码
15若有以下定义,则能使值为3的表达式是(D)。
intk=7,x=12;
A)x%=(k%=5)B)x%=(k-k%5)C)x%=k-k%5D)(x%=k)-(k%=5)
16判断char型变量c1是否为小写字母的正确表达式为(D)。
a'
<
=c1<
='
z'
B)(c1>
=A.&
&
(c1<
)
C)('
>
=c1)||('
=c1)D)(c1>
)&
17已知各变量的类型说明如下:
intk,a,b;
unsignedlongw=5;
doublex=
则以下不符合C语言语法的表达式是(A)。
A)x%(-3)
B)w+=-2
C)k=(a=2,b=3,a+b)
D)a+=a-=(b=4)*(a=3)
若t为double类型,表达式t=1,t+5,t++的值是(D)。
A)1B)C)D)
设n=10,i=4,则赋值运算n%=i+1执行后,n的值是(A).
A)0
B)3
C)2
D)1
设Intn=3;
则有表达式++n,n的结果是(C)。
A)2B)3C)4D)5
用十进制形式输入有符号整数时,在scanf函数语句里格式字符为(AB)。
A)dB)iC)nD)u
在scanf函数语句中可用的修饰符有(ABCD)。
A)*B)hC)lD)宽度
1数据是操作的对象,操作的结果会改变数据的状况。
对
2字符型变量用来存放字符常量,注意只能放2个字符。
错
3C语言中可以把一个字符串赋给一个字符变量。
4在C语言中的实型变量分为两种类型,它们是float(实型)和double(双精度实型)。
5在C语言中,要求参加运算的数必须是整数的运算符是%.对
6若有以下定义,则执行下面表达式y+=y-=m*=y后,y的值为-16。
intm=5,y=2;
7输入语句的格式为:
scanf("
%d%d%d"
&
a,&
b,&
c);
是正确的。
8在scanf("
%d,%d"
b)函数中,可以使用一个或多个空格作为两个输入数之间的间隔。
9getchar函数的功能是接收从键盘输入的一串字符。
10在变量说明中给变量赋初值的方法是:
inta=b=c=10;
12printf函数是一个标准库函数,它的函数原型在头文件"
"
中。
13printf函数称为格式输入函数,它的函数原型在头文件"
14在printf函数中,不同系统对输出表列的求值顺序不一定相同,TC是按从右到左进行的。
15若intx=3;
printf("
%d"
x);
则系统会报错,没有任何结果。
16逻辑运算符的优先级别高于算术运算符错
1在C语言中,表示逻辑"
值用【1】.
2表达式pow,sqrt(double(x)))值的数据类型为(double)。
3假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是【8】。
4若x是int型变量,则执行下面表达式后,x的值为【12】。
x=(a=4,6*2)
5若k为int整型变量且赋值7,请写出赋值表达式k*=k+3的运算结果【70】。
6scanf函数是一个标准库函数,它的函数原型在头文件【】中。
7getchar函数可以接收【单】个字符,输入数字也按字符处理。
8在语句中,给变量赋值时,赋值语句必须以【分号】结尾。
9当a=3,b=2,c=1时,表达式f=a>
b>
c的值是【0】
10设x,y,z均为int型变量,请写出描述"
x,y中有一个为负数"
的表达式【x<
0&
y>
=0||y<
x>
=0】
11若a=6,b=4,c=3,则表达式a&
b||b-c的值是【1】
12设x=3,y=-4,z=5,则表达式!
(x>
y)+(y!
=z)||(x+y)&
(y=z)的值是【1】
基础二
1下面四个选项中,均是非法常量的选项是(A)。
as'
B)'
C)-0x18D)0xabc
-0fff'
\01'
01177'
\0'
\0a'
12,4560xf"
a"
2下面四个选项中,均是不合法整型常量的选项是(D)。
A)-0f1B)-0xcdfC)-018D)-0x48eg
-0xffff017999-068
001112,4565e203f
3下面正确的字符常量是(C)。
A)"
c"
W'
4以下每个选项都代表一个常量,其中正确的整型常量是(B)。
A)B)-20C)1,000D)456
5以下选项中不合法的用户标识符是(C)。
A)_123B)PrintfC)A$D)Dim
6在下列C语言程序中,可以用做变量名的是(B)。
A)1
B)a1
C)int
D)*p
7C语言提供的合法数据关键字是(A)。
A)float
B)Sagned
C)Integer
D)Char
8以下符号中不能用作用户标识符的符号是(B)。
A)_256B)void
C)scanfD)Struct
9若k为int型变量,则以下语句(C)。
k=8567;
printf("
|%-06d|\n"
k);
A)输出格式描述不合法B)输出为|008567|
C)输出为|8567|D)输出为|-08567|
10sizeof(float)是(B)。
A)一个双精度表达式B)一个整型表达式
C)一种函数调用D)一个不合法的表达式
11在C语言中,int、char和short三种类型数据在内存中所占用的字节数(D)。
A)由用户自己定义B)均为2个字节
C)是任意的D)由所用机器的机器字长决定
12判断char型变量c1是否为小写字母的正确表达式为(D)。
13以下叙述中正确的是(B)。
A.a是实型变量,C语言允许进行以下赋值a=10,因此可以这样说:
实型变量中允许存放整型值
B.在赋值表达式中,赋值号右边即可以是变量也可以是任意表达式
C.执行表达式a=b后,在内存中a和b存储单元中的原有值都将被改变,a的值已由原值改变为b的值,b的值由原值变为0
D.已有a=3,b=5当执行了表达式a=b,b=a之后,已使a中的值为5,b中的值为3
14表达式18/4*sqrt/8值的数据类型为(C)。
A)intB)floatC)doubleD)不确定
15下列运算符中,不属于关系运算符的是(C)。
A)<
B)>
=C)!
D)!
=
16若希望当A的值为奇数时,表达式的值为真,A的值为偶数时,表达式的值为假,则以下不能满足要求的表达式是(C)。
A)A%2==1B)!
(A%2==0)C)!
(A%2)D)A%2
17已知各变量的类型说明如下:
inti=8,k,a,b;
doublex=,y=;
则以下符合C语言语法的表达式是(A)。
A)a+=a-=(b=4)*(a=3)
B)a=a*3=2
C)x%(-3)
D)y=float(i)
18若变量已正确定义并赋值,下面符合C语言语法的表达式是(B)。
A)a:
=a+7;
B)a=7+b+cC)int%4D)a=a+7=a+b
19逗号表达式(a=3*5,a*4),a+15的值为(C)。
A)15B)60C)30D)不确定
20设Intn=3;
则n++的结果是(B)。
1用小数或指数形式输入实数时,在scanf函数语句里格式字符为(BCD)。
A)iB)fC)eD)g
2可以使用(CD)输入字符型数据。
A)putchar(c);
B)getchar(c);
C)getchar();
D)scanf("
%c"
1C语言中数据有常量与变量之分。
错
2一般一个字符变量在内存中占一个字节。
对
3C语言规定,可以在定义变量时,同时使变量初始化。
对
4把k1、k2定义成基本整型变量,并赋初值0的定义语句是intk1=k2=0;
。
5如果i的原值为3,则:
j=++i,j的值为3。
6凡是表达式都有一个值。
scanf("
%d,%d,%d"
a,b,c);
%d,%*d,%d"
b)函数中,当输入为1,2,3时,将1赋给a,将2赋给b。
9getchar函数的功能是接收从键盘输入的一个整数。
10假定变量a,b,c在说明时已赋初值,则if((a=b;
)>
0)c=a;
11
13在printf函数中,格式字符d的意义是:
以十进制形式输出带符号整数。
14在printf函数中,输出表列的各输出项之间可用冒号分隔。
则系统不会报错,会输出x的地址。
16inta=0,b=1,c=2;
则表达式a||b+c&
b==c的值为0错
1若有以下定义:
charc='
\010'
则变量C中包含的字符个数为
(1)。
2若有以下定义:
intx=3,y=2;
floata=,b=;
则下面表达式的值为【1】。
(x+y)%2+(int)a/(int)b
3若a是int型变量、且a的初值为6,则执行下面表达式后,a的值为【-60】。
a+=a-=a*a
4若x是int型变量,则执行下面表达式后,x的值为【4】。
x=a=4,6*2
5若a是int型变量,且a的初值为6,则计算表达式后a的值为【-60】。
a+=a-=a*a
6scanf函数的地址表列中给出各变量的地址,地址是由【地址运算符"
】后跟变量名组成的。
7使用getchar函数接收字符,若输入多于一个字符时,只接收第【一】个字符。
8C语言的格式输出函数是【printf()】。
9当a=5,b=4,c=2时,表达式a>
b!
=c的值是【1】
10已知A=,B=2,C=,表达式A>
B&
C>
A||A<
!
B的值是【0】
11若a=3,b=2,c=1,则表达式a-b<
c||b==c的值是【0】
12有inta=0,b=4,c=5;
=c的值为【1】
基础三
1下面四个选项中,均是不合法的用户标识符的选项是(C)。
A)AB)floatC)b-aD)_123
p_0laogototemp
do_AintINT
2下面四个选项中,均是不合法浮点数的选项是(B)。
A)160.B)123C)-018D)-e3
123e4.234
e3.e51e3
3下面四个选项中,均是不正确的八进制或十六进制数的选项是(D)。
A)016B)0abcC)010D)0a12
0x8f017-0x117ff
0180xa0x16-123
4以下每个选项都代表一个常量,其中不正确的实型常量是(B)。
A)B)2C)D)
5可用作用户标识符的一组标识符是(B)。
A)voidB)a3_b3C)ForD)2a
define_xyz-abcDO
WORDIFCasesigeof
6下列标识符组中,合法的用户标识符为(B)。
A)PAd与p#d
B)Scanf与a10
C)void与max
D)A*与temp
7(B)是C语言提供的合法的数据类型关键字。
A)FloatB)signedC)integerD)Char
8以下选项中正确的常量是(a)。
A)012
B)-20
C)1,000
D)456
9现已定义整型变量inti=1;
执行循环语句while(i++<
5);
后,i的值为(c)。
A)1B)5C)6D)以上三个答案均不正确
10设变量a是整型,f是实型,i是双精度型,则表达式10+'
+i*f值的数据类型为(C)。
11若有说明语句:
\72'
则变量c(a)。
A)包含1个字符B)包含2个字符
C)包含3个字符D)说明不合法,c的值不确定
12设X、Y、Z都是int整型变量,且x=2,y=3,z=4,则下面的表达式中,值为0的表
达式是(b)。
x'
B)(!
y==1)&
(!
z==0)
C)(x<
y)&
z||1D)x||y+y&
z-y
A)在C程序中无论是整数还是实数,只要在允许的范围内都能准确无误的表示
B)若在定义语句doublea,b;
之后,因为变量a,b已正确定义,因此立刻执行这样的表达式:
a=b+是正确的
C)在C程序中,常量、变量、函数调用,都是表达式的一种e-4
03e2-8e5+2e-1
3下面四个选项中,均是正确的八进制或十六进制数的选项是(c)。
A)-1aB)0abcC)0010D)0a12
0x8f-0170x11-0x123
-0110xc0xf1-0xa
4以下选项中,为C语言合法的关键字是(d)。
A)swicthB)cherC)CaseD)default
5C语言提供的合法的数据类型关键字是(b)。
A)DoubleB)shortC)integerD)Char
6下列标识符组中,合法的用户标识符为(d)。
A)b-b与abc
B)CCP与float
C)hiy与<
ft>
D)isw与INT
7属于合法的C语言长整型常量的是(b)。
A)5876273B)0LC)2E10D)(Long)5876273
8若int类型数据占两个字节,下列程序的输出结果是(d)。
main()
{
intk=-1;
%d,%u\n"
k,k);
}
A)-1,-1B)-1,32767C)-1,32768D)-1,65535
9设已定义x为double类型变量
x=;
%\n"
x);
则以上语句(c)。
A)输出格式描述符的域宽不够,不能输出B)输出为+01
C)输出为+002D)输出为
10执行x=5>
1+2&
2||2*4<
4-!
0后,X的值为(c)。
A)-1B)0C)+1D)5
11设ch是字符变量,其值为A,且有下面的表达式ch=!
(ch>
ch<
)?
ch:
(ch+32)则表达式的值是(b)
A)AB)aC)2D)z
12设ch是char型变量,其值为Z,且有下面的表达式,其值为(d)。
ch=(ch>
Z'
(ch+32):
ch
A)AB)aC)ZD)z
13以下的变量定义中,合法的是(b)。
A)float3_four=;
B)int_abc_=2;
C)doublea=1+D)shortdo=15;
14若有intk=11;
则表达式(k++*1/3)的值是(b)。
A)0B)3C)11D)12
15逻辑运算符两侧运算对象的数据类型是(d)。
A)只是0或1B)只能是0或非0正数
C)只能是整型或字符型数据D)可以是任何类型数据
16下列表达式的值,那一个等于0(b)。
A)5%6B)5/6C)5/D)5-6
17以下正确的叙述是(d)。
A)在C程序中,每行只能写一条语句
B)若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数
C)在C程序中,无论是整数还是实数,都能被准确无误地表示
D)在C程序中,%是只能用于整数运算的运算符
18以下不正确的语句(设有intp,q)是(d)。
A)p*=3;
B)p/=q;
C)p+=3;
D)p&
=q;
19如果a=1,b=2,c=3,d=4,则条件表达式a<
b?
a:
c<
d?
c:
d的值为(a).
A)1B)2C)3D)4
20设Intn=2;
则++n+1==4的结果是(c)。
A)trueB)falseC)1D)0
1若输入4位整数到整型变量a中,可用(b)。
A)scanf("
%4d"
);
B)scanf("
a);
C)scanf("
a);
D)scanf("
2对于scanf("
a=%d"
a),设a为整型变量,输入5,其输出可为(a)。
A)a=5B)5C)a=5D)a=a=5
1在C语言中,要求对所有用到的变量先定义,然后才能使用。
√
2C语言中,字符数据与整型数据可以互相赋值。
x
3C实型变量分为单精度和双精度两种。
x
4a1、a2定义成单精度实型变量,并赋初值1的定义语句是floata1=1;
a2=1;
x
5C语言中逗号运算符又称为"
顺序求值运算符"
。
√
6C提供的三种逻辑运算符是!
&
>
=.x
7在使用scanf函数之前可以不包含头文件"
√
i)函数中,输入9,只把123456赋予变量i。
9a=b=c=d=10;
是一个合法的赋值语句。
√
10C语言的格式输出函数是scanf().x
12使用printf函数时,格式控制字符串和各输出项应一一对应。
√
13在printf函数中,格式字符f的意义是:
以小数形式输出单精度实数。
14在printf函数中,转义字符\b的作用是退格。
√
15算术运算符的优先级别高于逻辑运算符√
16inta=1,b=0,c=1;
,则!
(a+b)+c-0&
b+c/2的值为1x
1经过下述赋值后,变量x的数据类型是(int)。
intx=2;
doubley;
y=(int)(float)x;
2已知字母a的ASCII码的十进制代码为97,且设ch为字符型变量,则表达式ch='
8'
的值为【f】。
3若s是int型变量,且s=6,则下面表达式的值为【1】。
s%2+(s+1)%2
4表达式2*3的计算结果是【】。
5当a=3,b=2,c=1时,表达式f=a>
c的值是【0】.
6getchar函数是【字符输入】函数。
7赋值语句是由赋值表达式加上【分号】构成的。
8在TC中,printf()函数输出表列的求值顺序是【】。
9设y为int型变量,请写出描述"
y是奇数"
的表达式【y%2==1】
10若a=2,b=4,则表达式!
(x=a)||(y=b)&
0的值是【0】
11条件"
0<
x<
3或x<
-3"
的c语言表达式是【0<
x&
3>
x||-3>
x】
12有inta=3,b=4,c=5;
,则以下表达式的值为【1】
(a+b)+c-1&
b+c/2
基础五
1C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符(c)。
A)必须为大写
B)必须为下划线
C)必须为字母或下划线
D)可以是字母、数字和下划线中的任一种字符
2下面四个选项,均是合法转义字符的选项是(a)。
C)'
\018'
\\0'
\017'
\n'
xab'
3下面四个选项中,均是正确的数值常量或字符常量的选项是(d)。
A)B)"
D)+001
0f0110xabcd
1e10xFF002e2
0a50
4以下符号中不能用作用户标识符的是(d)。
A)IFB)SwitchC)getsD)case
5在C语言中,下列哪个字符为合法的字符常量(bd)。
\084′
B)'
\x43′