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

第一单元 C语言概述

一、选择题

1、C语言中主函数的个数为( A)个。 A)1

B)2

D)任意个

C)无穷个

2、以下关于C语言描述错误的是( D)。 A)一个C程序总是从main函数开始执行T B)每个语句和数据声明的最后必须有一个分号T C)C语言的注释符是以“/*”开始并以“*/”结束的 D)一个C程序可以包含多个main函数F 3、C 语言源程序文件后缀为( C )。 A).EXE

B).OBJ

C) .C

D).ASM

T

4、C语言是由( C )组成的。 A)子程序 B)主程序与子程序 5、C语言属于( B )语言 A)机器语言 B)汇编语言

第二单元 C语言基础

一、选择题

1、C语言中普通整型变量int在内存中占( B )字节。 A)1

B)2

C)3

D)4

C)高级语言

D)面向对象语言

C)函数 D)过程

2、下列不是C语言基本数据类型的是 ( A )。 A)字符型 B) 整型 C) 浮点型 D) 结构体

3、有关自增、自减运算,以下只有( D )是正确的。 A) ---f B) ++78 C) a—b++ D) d++

4、已知A=7.5,B=2,C=3.6,表达式(A>B && C>A) || (AB)的值是( A )。 A)0

B)10 C)1

1

D)5

5、若有x=1,y=2,z=3,则表达式(x

B)2

C)3

D)0

6、 判断char型变量ch是否为大写字母的正确表达式是( C )。 A) ‘A’<=ch<=‘Z’ B) (ch>=‘A’)&(ch<=‘Z’) C) (ch>=‘A’)&&(ch<=‘Z’) D) (‘A’<= ch)AND(‘Z’>= ch) 7、判断整型变量digit是否为数字的正确表达式是( C )。 A) ‘0’<=ch<=‘9’ B) (ch>=‘0’)&(ch<=‘9’) C) (ch>=‘0’)&&(ch<=‘9’) D) (‘0’<= ch)AND(‘9’>= ch) 8、 一个C程序的执行是从( A )。

A) 本程序的main函数开始,到main函数结柬

B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C)本程序的main函数开始,到本程序文件的最后一个函数结束 D)本程序文件的第一个函数开始,到本程序main函数结束 9、在以下标识符中,合法的是( C )

A)if B) 0xy C)_xy D)case

10、C语言中各种类型的数据其实决定了占用内存的字节数。float占( C )。 A)一字节 B)二字节 C)四字节 D)八字节 11、下列各选项中,( A )是有效的标识符。 A)ab B)3day C)day-3 12、以下叙述正确的是( C ) A) 在C程序中,每行只能写一条语句

B) 若a是实型变量,C程序中不允许a=10这种赋值。 C) 在C程序中,%是只能用于整数运算的运算符 D) 在C程序中,无论是整数还是实数,没有什么区别

13、有输入语句:scanf(―a=%d,b=%d,c=%d‖,&a,&b,&c);为使变量 a的值为1,b的值为3,c的值为2,则正确的数据输入方式是( B )。

A)132↙

B)1,3,2↙

D)#abc

C)a=1 b=3 c=2↙ D)a=1,b=3,c=2↙

14、设整型变量a为5,使b不为2的表达式是( C )。 A) b = a/2 B) b = 6-(--a) C) b=a%2 D) b=a>3?2:1

2

15、以下程序的输出结果是( D )。 int x=10,y=10;

printf(―%d %d\\n‖,x--,--y);

A) 10 10 B) 9 9 C) 9 10 D) 10 9 16、选出下列标识符中不是合法的标识符的是( D )。 A) hot_do B) cat1 C) _pri D) 2ab 17、设有如下定义: int x=10,y=3,z;

则语句printf(\的输出结果是( D )。 A) 1 B) 0 C) 4 D) 3

18、各种基本数据类型的存贮空间正确的长度排列为( C )。 A)int < char

A)char:a, b, c; B)char a; b; c; C)char a, b, c; D)char a, b, c。 20、转义字符“反斜杠线”的表示方法正确的是( B ) 。 A) \\ B) \\\\ C ) ?\\‘ D) ―\\‖ 21、若x=5,y=3 则y*=x+5; y的值为( D )。 A) 10 B) 20 C) 15 D) 30

22、能正确表示a和b同时为正或同时为负的逻辑表达式是( D ) A)(a>=0||b>=0)&&(a<0 ||b<0) B)(a>=0 && b>=0)&&(a<0 && b<0) C)(a+b>0) &&(a+b<=0) D) a*b>0 23、C语言中,合法的字符型常数是( D )。 A)?A‘ B)―A‖ C) 65 D) A 24、下列程序段的输出结果是( C )。 char c1,c2; c1=65; c2=65+32+1; printf(―%c,%c‖,c1,c2);

A)a,B B)a,b C)A,b D)A,B 25、下列语句不具有赋值功能的是( C )

3

A)a*=b B)x=1 C)a+b D)a++

26、在C语言中,存储一个整型、字符型、双精度实型变量所需的字节( A )。 A)2、1、8 B)4、1、4 C)4、1、4 D)2、2、8 27、下列程序段输出结果是( B )。 int j=2 , i=1; j /= i*j; printf(―%d‖,j);

A)0 B)1 C)2 D)3 28、不是C语言提供的合法关键字是( D )。 A)switch B)char C)case D)this

29、在C语言中,要求参加运算的数必须时整数的运算符是( C )。 A)/ B)* C)% D) =

30、若已定义x和y为double类型,且x=1;则表达式y=x+3/2的值是( C )。 A)1 B)2 C)2.0 D)2.5

31、设a为整型变量,不能正确表达数学关系:1010&&a<15 D)!(a<=10)&&!(a>=15) 32、表达式“10!=9‖的值是( D )。

A)true B)非零值 C)0 D)1

33、设a,b为字符型变量,执行scanf(“a=%c,b=%c”,&a,&b)后使a为’A’,b为’B’,从键盘上的正确输入是( B )。

A) ’A’ ‘B’ B) ’A’,’B’ C)A=A,B=B D)a=A,b=B

34、设有单精度变量f,其值为13.8。执行语句“n=( (int)f )%3;”后,n的值是( B )。 A)4

B)1

C)4.333333

D)4.6

35、普通整形int能够处理的数据范围是( D ) A)-32767~32767 B)-32768~32768 C)-32767~32768 D)-32768~32767

36、若定义x为double型变量,则能正确输入x值的语句是。B A)scanf(―%f‖,x); B)scanf(―%f‖,&x);

4

C)scanf(―%lf‖,&x); D)scanf(―%5.1f‖,&x) 37、执行 x=(6*7%8+9)/5; 后,x的值为( B ) A)1 B)2 C)3 D)4 38、若有代数式3ae/bc,则不正确的c语言表达式是( B ) A)a/b/c*e*3 B)3*a*e/b/c C)3*a*e/b*c D)a*e/b/c*3

39、设有变量说明:float x = 4.0 , y = 4.0,下面使x为10.0的表达式是( D ) A)x -= y*2.5 B)x /= y+9 C)x *= y-6 D)x += y+2 40、以下能正确定义整型变量z、b、c并为其赋初值5的语句是( C ) A)int a=b=c=5; B)int a,c, c=5; C)a=5,b=5,c=5; D)a=b=c=5;

41、C语言中双精度浮点型变量double在内存中占(D )字节。 A)1

B)2

C)4

D)8

42、以下哪个数学函数的作用是求某数的平方根( A )。 A)sqrt()

B)fabs()

C)pow()

D)exp()

43、两次运行下面的程序,如果从键盘上分别输入6和3,则输出结果是(int x;

scanf(\

if(++x>5) printf(\else printf(\

A) 7和5 B) 6和3 C) 7和4 D)6和4 44、执行语句\后,x,a,b的值依次为( B )。 A)3, 3, 2 B)3,2,2 C)3,2,3 D)2,3,2 45、读出以下语句的输出结果是( D )。 int x=10,y=10;

printf(\%d\\n\

A) 10 10 B)9 9 C)9 10 D) 10 9 *

46、C语言中,合法的字符串型常数是( D )。

A)?A‘ B)\ C) ?abcd‘ D) abcd 47、为表示关系x≥y≥z,应使用C语言表达式( A )。

5

)。 C