1 下面四个选项中,均是非法常量的选项是( )。
A)'as' B)'\\' C)-0x18 D)0xabc
-0fff '\01' 01177 '\0'
'\0a' 12,456 0xf "a"
2 下面四个选项中,均是不合法整型常量的选项是( )。
A)-0f1 B)-0xcdf C)-018 D)-0x48eg
-0xffff 017 999 -068
0011 12,456 5e2 03f
3 下面正确的字符常量是( )。
A) "c" B) '\\'' C) 'W' D) '
4 以下每个选项都代表一个常量,其中正确的整型常量是( )。
A)1.2 B)-20 C)1,000 D)4 5 6
5 以下选项中不合法的用户标识符是( )。
A)_123 B)Printf C)A$ D)Dim
6 在下列C语言程序中,可以用做变量名的是( )。
A)1 B)a1 C)int D)*p
7 C语言提供的合法数据关键字是( )。
A) float B) Sagned C) Integer D) Char
8 以下符号中不能用作用户标识符的符号是( )。
A)_256 B)void C)scanf D)Struct
9 若k为int型变量,则以下语句( )。k=8567;printf("|%-06d|\n",k);
A)输出格式描述不合法 B)输出为|008567|
C)输出为|8567| D)输出为|-08567|
10 sizeof(float)是( )。
A)一个双精度表达式 B)一个整型表达式
C)一种函数调用 D)一个不合法的表达式
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)int B)float C)double D)不确定
15 下列运算符中,不属于关系运算符的是( )。
A) < B) > = C) ! D) ! =
16 若希望当A的值为奇数时,表达式的值为真,A的值为偶数时,表达式的值为假,则以下不能满足要求的表达式是( )。
A) A%2= =1 B) !(A%2= =0) C) !(A%2) D) A%2
17 已知各变量的类型说明如下:
int i=8,k,a,b;
unsigned long w=5;
double x=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)int 12.3%4 D)a=a+7=a+b
19 逗号表达式(a=3*5,a*4),a+15的值为( )。
A)15 B)60 C)30 D)不确定
20 设Int n=3;则n++的结果是( )。
A)2 B)3 C)4 D)5
21 用小数或指数形式输入实数时,在scanf函数语句里格式字符为( )。
A)i B)f C)e D)g
22 可以使用( )输入字符型数据。
A)putchar(c); B)getchar(c); C)getchar(); D)scanf("%c",&c);
23 C语言中数据有常量与变量之分。
24 一般一个字符变量在内存中占一个字节。
25 C语言规定,可以在定义变量时,同时使变量初始化。
26 把k1、k2定义成基本整型变量,并赋初值0的定义语句是int k1=k2=0。
27 如果i的原值为3,则:j = ++ i,j的值为3。
28 凡是表达式都有一个值。
29 输入语句的格式为:scanf("%d,%d,%d",a,b,c);是正确的。
30 在scanf("%d,%*d,%d",&a,&b)函数中,当输入为1,2,3时,将1赋给a,将2赋给b。
31 getchar函数的功能是接收从键盘输入的一个整数。
32 假定变量a,b,c在说明时已赋初值,则 if ((a=b;)>0) c=a;是正确的。
33 printf函数是一个标准库函数,它的函数原型在头文件"string.h"中。
34 在printf函数中,格式字符d的意义是:以十进制形式输出带符号整数。
35 在printf函数中,输出表列的各输出项之间可用冒号分隔。
36 若int x=3; printf("%d",&x);则系统不会报错,会输出x的地址。
37 int a=0,b=1,c=2;则表达式a||b+c&&b==c的值为0
38 若有以下定义:char c='\010';则变量C中包含的字符个数为( )。
39 若有以下定义:int x=3,y=2;float a=2.5,b=3.5;则下面表达式的值为【 】。(x+y)%2+(int)a/(int)b
40 若a是int型变量、且a的初值为6,则执行下面表达式后,a的值为【 】。a+=a-=a*a
41 若x是int型变量,则执行下面表达式后,x的值为【 】。x=a=4,6*2
42 若a是int型变量,且a的初值为6,则计算表达式后a的值为【 】。a+=a-=a*a
43 scanf函数的地址表列中给出各变量的地址,地址是由【 】后跟变量名组成的。
44 使用getchar函数接收字符,若输入多于一个字符时,只接收第【 】个字符。
45 C语言的格式输出函数是【 】。
46 当a=5,b=4,c=2时,表达式a>b!=c 的值是【 】
47 已知A=7.5,B=2,C=3.6,表达式A>B&&C>A || A<B&&!C>B的值是【 】
48 若a=3,b=2,c=1,则表达式a-b<c||b==c的值是【 】
49 有int a=0,b=4,c=5;则表达式a||b+c&&b!=c的值为【 】
答案:
1.A 2.D 3.C 4.B 5.C 6.B 7.A 8.B
9.C 10.B 11.D 12.D 13.B 14.C 15.C 16.C
17.A 18.B 19.C 20.B 21.BCD 22.CD
23.对 24.对 25.对 26.错 27.错 28.对 29.错 30.错
31.错 32.错 33.错 34.对 35.错 36.对 37.对
38.1 39.1 40.60 41.4 42.60 43.&
44.1 45.printf() 46.1 47.0 48.0 49.1