C语言题库及答案(选择题) 下载本文

C语言题库(选择题)

电子Z1201班 张斌 1210910313

1.C语言源程序的基本单位是()。

A.过程 B.函数 C.子程序 D.标识符 2. 下列字符序列中,可用作C标识符的一组字符序列是()。 A. S.b,sum,average,_above B. class,day,lotus_1,2day

C. #md,&12x,month,student_n! D. D56,r_1_2,name,_st_1

3. 以下标识符中,不能作为合法的C用户定义标识符的是()。 A.a3_b3 B.void C._123 D.IF 4. 以下数据中,不正确的数值或字符常量是()。

A.0 B.5L C.o13 D.9861 5.以下数值中,不正确的八进制数或十六进制数是()。

A.0x16 B.16 C.-16 D.0xaaaa 6.以下的选择中,正确的赋值语句是()。

A.a=1,b=2 B.j++ C.a=b=5; D.y=int(x) 7.以下运算符中,优先级最高的运算符是()。

A.?: B.++ C.&& D., 8.在C语言中,能代表逻辑值“真”的是()。

A.TRUE B.大于0的数 C.非0整数 D.非0的数 9.下列变量说明语句中,正确的是()。

A.char:a b c; B.char a;b;c; C.int x;z; D.int x,z; 10.下列字符序列中,不可用作C语言标识符的是()。

A.b70 B.#ab C.symbol D.a_1 11.以下不正确的叙述是()。

A.在C程序中所用的变量必须先定义后使用。 B.程序中,APH和aph是两个不同的变量。

C.若a和b类型相同,在执行了赋值语句a=b;后b中的值将放入a中,b中的值不变。

D.当输入数值数据时,对于整型变量只能输入整型值;对于实型变量只能输入实型值。

12.以下标识符中,不能作为合法的C用户定义标识符的是()。 A.For B.Printf C.WORD D.sizeof 13.以下标识符中,不能作为合法的C用户定义标识符的是()。 A.answer B.to C.signed D._if 14.以下标识符中,不能作为合法的C用户定义标识符的是()。

A.putchar B._double C._123 D.INT 15.以下数据中,不正确的数值或字符常量是()。

A.8.9e1.2 B.10 C.0xff00 D.82.5 16.以下数据中,不正确的数值或字符常量是()。

A.c B.66 C.0xaa D.50

- 1 -

17.以下运算符中,优先级最高的运算符是()。

A.*= B.>= C.(类型) D.+ 18.以下运算符中,优先级最高的运算符是()。

A.|| B.% C.! D.== 19.以下运算符中,优先级最高的运算符是()。

A.= B.!= C.*(乘号) D.() 20.以下叙述中不正确的是()。 A.一个好的程序应该有详尽的注释

B.在C程序中,赋值运算符的优先级最低 C.在C程序中,j++;是一条赋值语句

D.C程序中的#include和#define均不是C语句

21.设C语言中,int类型数据占2个字节,则long类型数据占()。 A.1个字节 B.2个字节 C.4个字节 D.8个字节 22.设C语言中,int类型数据占2个字节,则short类型数据占()。

A.1个字节 B.2个字节 C.4个字节 D.8个字节 23.C语言中,double类型数据占()。

A.1个字节 B.2个字节 C.4个字节 D.8个字节 24.C语言中,char类型数据占()。

A.1个字节 B.2个字节 C.4个字节 D.8个字节 25.设C语言中,int类型数据占2个字节,则unsigned类型数据占()。 A.1个字节 B.2个字节 C.4个字节 D.8个字节 26.下列程序的输出结果是()。 main()

{char c1=97,c2=98; printf(\}

A.97 98 B.97 b C.a 98 D.a b 27.执行下列语句后变量x和y的值是()。 y=10;x=y++;

A.x=10,y=10 B.x=11,y=11 C.x=10,y=11 D.x=11,y=10 28.下列数据中,为字符串常量的是()。

A. A B.\ C.How do you do. D.$abc

29.先用语句定义字符型变量c,然后要将字符a赋给c,则下列语句中正确的是 A.c='a'; B.c=\ C.c=\ D.C='97' 30.下列语句的结果是()。 main() { int j; j=3;

printf(\printf(\}

A.3,3 B.3,4 C.4,3 D.4,4

31.设a=12,且a定义为整型变量。执行语句a+=a-=a*=a;后a的值为()。 A.12 B.144 C.0 D.132

- 2 -

32.已知year为整型变量,不能使表达式(year%4==0&&year0!=0)||year@0==0的值为“真”的数据是()。

A.1990 B.1992 C.1996 D.2000 33.下列运算符中,不属于关系运算符的是()。

A.< B.> C.>= D.! 34.假设所有变量均为整型,表达式:a=2,b=5,a>b?a++:b++,a+b的值是()。 A.7 B.8 C.9 D.2 35.以下不符合C语言语法的赋值语句是()。

A.a=1,b=2 B.++j; C.a=b=5; D.y=(a=3,6*5); 36.以下不符合C语言语法的语句是()。

A.j++; B.j=j=5; C.k=2*4,k*4; D.y=float(j); 37.执行下列程序后,其输出结果是()。 main() {int a=9; a+=a-=a+a;

printf(\}

A.18 B.9 C.-18 D.-9 38.下列语句的输出结果是()。 printf(\

A.有语法错误不能通过编译 B.2 C.1 D.0 39.下列程序的输出结果是()。 main()

{int a=7,b=5;

printf(\}

A.0 B.5 C.1 D.不确定值 40.下列程序的输出结果是()。 main()

{int a=011;

printf(\}

A.12 B.11 C.10 D.9 41.下列程序的输出结果是()。 main() {

printf(\}

A.0 B.变量无定义 C.-1 D.1 42.若int类型数据占两个字节,则下列语句的输出为()。 int k=-1; printf(\

A.-1,-1 B.-132,767 C.-132,768 D.-165,535 43.若k,g均为int型变量,则下列语句的输出为()。 k=017; g=111; printf(\ printf(\

- 3 -

A.15 6f B.16 70 C.15 71 D.16 6f 44.若k为int型变量,则以下程序段的执行结果是()。 k=-8567; printf(\A.格式描述符不合法,输出无定值 B.输出为|D| C.输出为|0-8567| D.输出为|-8567|

45.若ch为char型变量,k为int型变量(已知字符a的ASCII十进制代码为97), 则以下程序段的执行结果是()。

ch='a'; k=12; printf(\ printf(\A.因变量类型与格式描述符的类型不匹配,输出无定值 B.输出项与格式描述符个数不符,输出为零值或不定值 C.61,141,k=%d D.61,141,k=

46.若有以下定义:char s='\\092'; 则该语句()。 A.使s的值包含1个字符 B.定义不合法,s的值不确定 C.使s的值包含4个字符 D.使s的值包含3个字符

47.若a是float型变量,b是unsigned型变量,以下输入语句中合法的是()。 A.scanf(\ B.scanf(\C.scanf(\ D.scanf(\

48.已知字母a的ASCII十进制代码为97,则执行下列语句后的输出结果为()。 char a='a'; a--;

printf(\

A.b,c B.a--运算不合法,故有语法错

C.98,c D.格式描述和输出项不匹配,输出无定值 49.下列程序的输出结果为()。 main()

{int m=7,n=4;

float a=38.4,b=6.4,x; x=m/2+n*a/b+1/2; printf(\}

A.27 B.27.5 C.28 D.28.5 50.若给定条件表达式(M)?(a++):(a--),则其中表达式M()。

A.和(M==0)等价 B.和(M==1)等价 C.和(M!=0)等价 D.和(M!=1)等价 51.以下程序的输出结果是()。 main()

{int i,j,k,a=3,b=2; i=(--a==b++)?--a:++b; j=a++;k=b;

printf(\}

- 4 -

A.i=2,j=1,k=3 B.i=1,j=1,k=2 C.i=4,j=2,k=4 D.i=1,j=1,k=3 52.a,b为整型变量,二者均不为0,以下关系表达式中恒成立的是()。

A.a*b/a*b==1 B.a/b*b/a==1 C.a/b*b+a%b==a D.a/b*b==a 53.为了提高程序的运行速度,在函数中对于整型或指针可以使用()型的变量。 A.auto B.register C.static D.extern 54.以下程序的输出结果为()。 main()

{int i=010,j=10;

printf(\}

A.11,10 B.9,10 C.010,9 D.10,9 55.C 语言中以下几种运算符的优先次序()的排列是正确的。 A.由高到低为:!,&&,||,算术运算符,赋值运算符

B.由高到低为:!,算术运算符,关系运算符,&&,||,赋值运算符 C.由高到低为:算术运算符,关系运算符,赋值运算符,!,&&,|| D.由高到低为:算术运算符,关系运算符,!,&&,||,赋值运算符

56.设a为整型变量,初值为12,执行完语句a+=a-=a*a后,a的值是()。 A.552 B.144 C.264 D.-264

57.在TC运行环境中经下列语句定义后,sizeof(x),sizeof(y),sizeof(a),sizeof(b)在微机上的值分别为()。 char x=65; float y=7.3; int a=100; double b=4.5;

A.2,2,2,4 B.1,2,2,4 C.1,4,2,8 D.2,4,2,8 58.用下列语句定义a,b,c,然后执行b=a、c='b'+b,则b,c的值是()。 long a=0xffffff; int b; char c;

A.0ffffff 和0x61 B.-1和98 C.-1和97 D.指向同一地址 59.执行下列语句后,a和b的值分别为()。 int a,b; a=1+'a';

b=2+7%-4-'A';

A.-63,-64 B.98,-60 C.1,-60 D.79,78 60.C语言中要求对变量作强制定义的主要理由是()。

A.便于移植 B.便于写文件

C.便于编辑预处理程序的处理 D.便于确定类型和分配空间 61.以下程序的输出结果是()。 main()

{float x=3.6; int i; i=(int)x;

printf(\}

- 5 -