全国计算机等级考试二级C语言笔试习题集答案及解析 (2) -

更新时间:2023-12-06 02:19:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第一章 C语言基础知识

一,选择题

1 答案是A

A正确

B {}可以作为复合语句的标志 C main 函数不是用户命名的

D 分号是语句结束的标志,肯定是语句的一部分 做这个题目需要对书上的概念透彻的理解

2 答案是A

A 错误 用户标识符:命名时,标识符的选择由用户自定,但是不能与关键字相同,所以A选项错误。这个题目考察用户标识符

3 答案是B

用户标识符是标识符,所以可以是有下划线,但是中划线不属于字母, 数字,下划线其中一种。这个题目考察用户标识符的概念。

4 答案是B

define 是预定义标识符,而预定义标识符可以是用户标识符,所以 define可以是用户标识,if 是关键字,而关键字不能是用户标识符, 所以if不可以是用户标识符

5 答案是D

long 是关键字,参照附录二 6 答案是D

D答案以数字2开头了,不符合标识符定义

7 答案是C C答案以数字开头了

8 答案是D int 是关键字

9 答案是B

答案A 是关键字,答案C是以数字开头了,不符合概念,答案D出 现了小数点

10 答案是A

答案A出现了小数点

11 答案是C

答案C 以数字开头了

1

12 答案是A

B答案中float 是关键字,C答案中3c以数字3开头了,D答案中-5d 中 - 不属于字母,数字,下划线中一种

13 答案是A

B答案中-max中-错误,C答案中3COM以字母3开头了,D答案中 int 是关键字,不是用户标识符

14 答案是B

A答案中15. 后面不应该有点,C答案中出现了逗号,D中字母B有 问题

15 答案是D

Visual C++6.0中int类型的变量占的字节数为4。

16 答案是B

B中出现了8,而八进制只能有0到7组成

17 答案是D

答案D中开头是0不是o

18 答案是C

答案A中E后面是整数,0.5是小数 答案B 中E后面不能为空 答案D中E前面不能为空 本题目考察指数的表示形式

19 答案是C 答案A中2.0有问题,不能为小数形式 答案B中E前面不能为空 答案D中E后面不能为空 本题目考察指数的表示形式

20 答案是A

B中八进制中不能出现数字8,C中e后面不能是小数,D中e后面 不能为空

21 答案是B

B中0.4是小数,不正确

22 答案是C

C中0.5是小数,不正确

2

23 答案是D

3.6-5/2+1.2+5%2=3.6-2+1.2+1=3.8

本题目考察算术运算符,需要注意整数除以整数结果只能是整数

24 答案是D

%不能用于实型的计算

25 答案是D

D答案中$不属于字母,数字,下划线

26 答案是 A

A答案是逗号表达式,B答案中x+1=y是赋值表达式,左边只能是变

量,而这里是x+1, 同理答案C中x+10也是错误的,在D答案中, 考察的是强制类型转换, 正确的是(double)x/10

27 答案是 A

本题考察的是注释需要注意的地方,具体解答见课本第2页中间部分

28 答案是B

答案A中n2没有定义,答案C中在定义f之前不能使用它,答案D 中E后面必须是整数

29 答案是 C

考察的是强制类型转换,正确的是k%(int)f

30 答案是 D 本题目类似与第七课时的例一,解题方法是要抓住++m,--n,--m,

表达式的值是变量变化之后的值,而n--表达式的值是变量n变化之 前的值

31 答案是B 本题目考察的是负

整数与无符号正整数在计算机中存放的格式的一样的,但表示的不 同的两个数

32 答案是C

A答案中%运算对象不能为实型,26.8错误,B答案中考察的赋值 运算符,赋值运算符左边必须是变量,所以赋值运算符左边1+2错 误,同理答案D错误

33 答案是 C

本题目考察的是课本第15页的关于自加与自减运算符的第一点说

明,即增量运算符的运算对象只能是变量,而在C答案中++(i+1)

3

中,i+1是表达式

34 答案是 B

本题目考察的是整数除以整数结果是整数,在B答案中1/2结果是0,

导致整个表达式的值是0,明显是错误的

35 答案是D

对于++、--单目运算符来说,其运算对象可以是char型、int型和float型变量

36 答案是A

本题目主要考察n++表达式的值是n变化之前的值,然后使n的值

增加1

37 答案是 B

c=a/b+0.4 c=8/5+0.4 c=1+0.4 c=1.4 因为c 是int 型的,

所以c的值是1 ,做此题目需要仔细阅读题目

38 答案是 D

(int)a+b/b=(int)5.5+2.5/2.5=5+1.000000=b=6.000000 同样a,b的类型是double型的

39 答案是D

long 和short不能相互修饰

40 答案是 C

标识符中不能有$

41 答案是C A选项中,在变量赋值时不能赋给表达式,而y*5是表达式;选项B中进行强制类型转换时,类型标识符要加上括号,所以错误;选项D中,%(求余运算符)运算对象只能是整形数。

42 答案是 A

选项A中,b变量还没有定义

43 答案是C

选项A中long是关键字;选项B中“-”符号不属于字母、数字或下划线;选项D中,int是关键字。

44 答案是 B

选项A中,八进制数只能由0—7之间的数字组成;选项C,十六进制数应该以0X开头,并且由0—9以及a—f组成,Oabc不正确;选项D中10,000包含逗号,不正确。

4

45 答案是B

C语言的标识符中只能包含字线、数字和下划线,没有连接符。

46 答案是 C

既然在内存中,字符数据以 ASCII 码存储,它的存储形式就与整数的存储形式类似。这样使字符型数据和整型数据之间可以通用。一个字符数据既可以以字符形式输出,也可以以整数形式输出。以字符形式输出时,需要先将存储单元中的 ASCII 码转换成相应字符,然后输出。以整数形式输出时,直接将 ASCII 码作为整数输出。也可以对字符数据进行算术运算,此时相当于对它们的 ASCII 码进行算术运算。

47 答案是D

不同的计算机系统或者编译系统,对3种整数类型所占用的字节数有不同的规定。

48 答案是A

选项B中求余运算(%)的运算对象必须是整型;选项C中,赋值运算符(=)的左边必须是变量,不能是常量或表达式;选项D与选项C同理。

49 答案是 A

++运算符有前缀和后缀两种形式,本题中的选项C就是前缀形式,

其表达式的值为增1后的值,而选项A为后缀形式,其表达式的值为增1之前的值。而选项B和D的表达式都是k加1之后的值

50 答案是A

51 答案是C 选项A中将一个变量j的值赋给了一个表达式,这种写法是错误的,

只能给变量赋值,而不能给常量和表达式赋值;选项B中强制类型转换的格式使用出错,强制类型转换时,类型标识符必须用括号括起来;选项D中,求余运算符(%)的两端必须是整形数。

52 答案是 D

字符常量是用单引号括起来的单个字符,所以选项B错误;此外还

有一种特殊的字符专为控制设计,称为转义字符,有三种转义字符:一种是由一个“\\”开头加一个普通字符组成,代表一个字符。如’\\’’表示一个单引号字符,所以选项D正确;’\\\\’表示一个斜杠字符,而选项C中的’\\’则是错误的;用“\\”与其后的1~3位八进制数字构成的字符序列,表示ASCII码等值于该八进制数的字符;用“\\x”与其后的1~2位十六进制数字构成的字符序列,表示ASCII码等值于该十六进制数的字符;所以选项A错误。

5

本文来源:https://www.bwwdw.com/article/h1rt.html

Top