c语言 复习试题.docx
《c语言 复习试题.docx》由会员分享,可在线阅读,更多相关《c语言 复习试题.docx(56页珍藏版)》请在冰豆网上搜索。
![c语言 复习试题.docx](https://file1.bdocx.com/fileroot1/2022-10/26/141641d6-9084-4a28-b383-e6df0a1fe81b/141641d6-9084-4a28-b383-e6df0a1fe81b1.gif)
c语言复习试题
C语言基础一:
合法的字符常量是()。
A)‘\0x8’B)“a”C)‘ab’D)‘\x43’
1.下列四组选项中,均不是C语言关健字的选项是()。
A)defineB)gectC)includeD)while
IFcharscanfgo
typeprintfcasepow
2.下面四个选项中,均是合法整型常量的选项是()。
A)160B)-0xcdfC)-01D)-0x48a
-0xffff01a986,0122e5
0110xe06680x
<
3.下面四个选项中,均是不合法的转义符的选项是()。
A)'\"'B)'\1011'C)'\011'D)'\abc'
'\\''\''\f''\101'
'xf''\A''\}''x1f'
4.下面不正确的字符串常量是()。
A)'abc'B)"12'12"C)"0"D)""
5.以下选项中不合法的用户标识符是()。
A)abc.cB)fileC)MainD)PRINT
6.C语言提供的合法关键字是()。
A)swith
B)cher
C)Case
D)static
7.下列标识符组中,合法的用户标识符为
A)_0123与ssiped
B)del-word与signed
C)list与*jer
D)keep%与wind
8.在C语言中,逻辑值"真"的表示是用()。
A)trueB)整型值0C)非0值D)T
9若有以下定义
chars='\092';
则该语句()
A)使s的值包含一个字符B)定义不合法,s的值不确定
C)使s的值包含4个字符D)使s的值包含3个字符
10设C语言中,int类型数据占2个字节,则float类型数据占()个字节。
A)1B)2C)8D)4
12逻辑运算符两侧运算对象的数据类型是()。
A)只是0或1B)只能是0或非0正数
C)只能是整型或字符型数据D)可以是任何合法的类型数据
13TURBOC中int类型变量所占字节数是()。
A)1B)2C)3D)4
14在C语言中,char型数据在内存中的存储形式是()。
A)补码B)反码C)原码D)ASCII码
15若有以下定义,则能使值为3的表达式是()。
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是否为小写字母的正确表达式为()。
A)'a'<=c1<='z'B)(c1>=’A’)&&(c1<='z')
C)('a'>=c1)||('z'<=c1)D)(c1>='a')&&(c1<='z')
17已知各变量的类型说明如下:
intk,a,b;
unsignedlongw=5;
doublex=1.42
则以下不符合C语言语法的表达式是()。
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++的值是()。
A)1B)6.0C)2.0D)1.0
设n=10,i=4,则赋值运算n%=i+1执行后,n的值是().
A)0B)3C)2D)1
设Intn=3;则有表达式++n,n的结果是()。
A)2B)3C)4D)5
用十进制形式输入有符号整数时,在scanf函数语句里格式字符为()。
A)dB)fC)nD)e
字符型变量用来存放字符常量,注意只能放2个字符。
C语言中可以把一个字符串赋给一个字符变量。
在C语言中的实型变量分为两种类型,它们是float(实型)和double(双精度实型)。
在C语言中,要求参加运算的数必须是整数的运算符是%.对6若有以下定义,则执行下面表达式y+=y-=m*=y后,y的值为-6。
intm=5,y=2;
输入语句的格式为:
scanf("%d%d%d",&a,&b,&c);是正确的。
在scanf("%d,%d",&a,&b)函数中,可以使用一个或多个空格作为两个输入数之间的间隔。
getchar函数的功能是接收从键盘输入的一串字符。
在变量说明中给变量赋初值的方法是:
inta=b=c=10;
printf函数是一个标准库函数,它的函数原型在头文件"stdio.h"中。
printf函数称为格式输入函数,它的函数原型在头文件"stdio.h"中。
在printf函数中,不同系统对输出表列的求值顺序不一定相同,TC是按从右到左进行的。
若intx=3;printf("%d",&x);则系统会报错,没有任何结果。
逻辑运算符的优先级别高于算术运算符
1在C语言中,表示逻辑"真"值用【】.
3假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是【】。
4若x是int型变量,则执行下面表达式后,x的值为【】。
x=(a=4,6*2)
5若k为int整型变量且赋值7,请写出赋值表达式k*=k+3的运算结果【】。
6scanf函数是一个标准库函数,它的函数原型在头文件【】中。
7getchar函数可以接收【】个字符,输入数字也按字符处理。
8在语句中,给变量赋值时,赋值语句必须以【】结尾。
9当a=3,b=2,c=1时,表达式f=a>b>c的值是【】
10设x,y,z均为int型变量,请写出描述"x,y中有一个为负数"的表达式【】
11若a=6,b=4,c=3,则表达式a&&b||b-c的值是【】
12设x=3,y=-4,z=5,则表达式!
(x>y)+(y!
=z)||(x+y)&&(y=z)的值是【】
基础二
1下面四个选项中,均是非法常量的选项是()。
A)'as'B)'\\'C)-0x18D)0xabc
-0fff'\01'01177'\0'
'\0a'12,4560xf"a"
2下面四个选项中,均是不合法整型常量的选项是()。
A)-0f1B)-0xcdfC)-018D)-0x48eg
-0xffff017999-068
001112,4565e203f
3下面正确的字符常量是()。
A)"c"B)'\\''C)'W'D)'
4以下每个选项都代表一个常量,其中正确的整型常量是()。
A)1.2B)-20C)1,000D)456
5以下选项中不合法的用户标识符是(C)。
A)_123B)PrintfC)A$D)Dim
6在下列C语言程序中,可以用做变量名的是()。
A)1
B)a1
C)int
D)*p
7C语言提供的合法数据关键字是()。
A)float
B)Sagned
C)Integer
D)Char
8以下符号中不能用作用户标识符的符号是(B)。
A)_256B)void
C)scanfD)Struct
9若k为int型变量,则以下语句()。
k=8567;
printf("|%-6d|\n",k);
A)输出格式描述不合法B)输出为|008567|
C)输出为|8567|D)输出为|-08567|
11在C语言中,int、char和short三种类型数据在内存中所占用的字节数()。
A)由用户自己定义B)均为2个字节
C)是任意的D)由所用机器的机器字长决定
12判断char型变量c1是否为小写字母的正确表达式为()。
A)'a'<=c1<='z'B)(c1>=A.&&(c1<='z')
C)('a'>=c1)||('z'<=c1)D)(c1>='a')&&(c1<='z')
13以下叙述中正确的是()。
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(4.0)/8值的数据类型为()。
A)intB)floatC)doubleD)不确定
15下列运算符中,不属于关系运算符的是()。
A)=C)!
D)!
=
16若希望当A的值为奇数时,表达式的值为真,A的值为偶数时,表达式的值为假,则以下不能满足要求的表达式是()。
A)A%2==1B)!
(A%2==0)C)!
(A%2)D)A%2
17已知各变量的类型说明如下:
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=2
C)x%(-3)
D)y=float(i)
18若变量已正确定义并赋值,下面符合C语言语法的表达式是()。
A)a=a+7;B)a=7+b+c,a++C)int12.3%4D)a=a+7=a+b
19逗号表达式(a=3*5,a*4),a+15的值为(C)。
A)15B)60C)30D)不确定
20设Intn=3;则n++的结果是()。
A)2B)3C)4D)5
2可以使用()输入字符型数据。
A)putchar(c);B)getchar(c);C)getchar();D)scanf("%c",&c);
3C语言规定,可以在定义变量时,同时使变量初始化。
4把k1、k2定义成基本整型变量,并赋初值0的定义语句是intk1=k2=0;。
5如果i的原值为3,则:
j=++i,j的值为3。
6凡是表达式都有一个值。
7输入语句的格式为:
scanf("%d,%d,%d",a,b,c);是正确的。
8在scanf("%d,%*d,%d",&a,&b)函数中,当输入为1,2,3时,将1赋给a,将2赋给b。
9getchar函数的功能是接收从键盘输入的一个整数。
10假定变量a,b,c在说明时已赋初值,则if((a=b;)>0)c=a;是正确的。
12printf函数是一个标准库函数,它的函数原型在头文件"string.h"中。
13在printf函数中,格式字符d的意义是:
以十进制形式输出带符号整数。
14在printf函数中,输出表列的各输出项之间可用冒号分隔。
15若intx=3;printf("%d",&x);则系统不会报错,会输出x的地址。
16inta=0,b=1,c=2;则表达式a||b+c&&b==c的值为0
1若有以下定义:
charc='\010';则变量C中包含的字符个数为()。
2若有以下定义:
intx=3,y=2;floata=2.5,b=3.5;则下面表达式的值为【】。
(x+y)%2+(int)a/(int)b
3若a是int型变量、且a的初值为6,则执行下面表达式后,a的值为【】。
a+=a-=a*a
4若x是int型变量,则执行下面表达式后,x的值为【】。
x=a=4,6*2
5若a是int型变量,且a的初值为6,则计算表达式后a的值为【】