荟萃馆

位置:首页 > 计算机 > C语言

全国计算机等级考试C语言程序设计笔试题及答案参考

C语言1.62W

知之者不如好之者,好之者不如乐之者。以下是小编为大家搜索整理的全国计算机等级考试C语言程序设计笔试题及答案参考,希望能给大家带来帮助!更多精彩内容请及时关注我们应届毕业生考试网!

全国计算机等级考试C语言程序设计笔试题及答案参考

  一、判断题

√ 1.C++语言的合法字符集与C语言的完全相同。

× 2.标识符规定大小写字母没有区别。

× 3.C++程序中,不得使用没有定义或说明的变量。

√ 4.变量的存储类指出了变量的作用域和寿命。

√ 5.变量的数据类型指出了变量在内存中存放的字节数。

× 6.定义变量时,变量的存储类说明符不得省略。

× 7.自动类变量与内部静态类变量的作用域和寿命都是相同的。

× 8.自动类变量可以定义在函数体外,这时应加说明符auto。

× 9.外部类变量与外部静态类变量的作用域是相同的。

× 10.变量被定义后是否有默认值与存储类无关,与数据类型有关。

√ 11.C++程序中,通常使用const来定义符号常量,定义时必须指出类型。

× 12.变量被定义或说明后,它一定具有有意义的值。

× 13.字符串常量与字符常量的区别仅表现在定义形式上的不同,一个用双撇号,另一个用单撇号。

× 14.所有变量的可见性和存在性都是一致的。

√ 15.变量在它的作用域内一定是可见的,又是存在的。

√ 16.C++语言中除了包含C语言的所有运算符外,还规定自身的若干个运算符。

√ 17.增1和减1运算符以及赋值运算符都具有副作用。

× 18.增1和减1运算符不仅可以作用在变量上,也可以作用在表达式上。

× 19.关系运算符可以用来比较两个字符的大小,也可以比较两个字符串的大小。

× 20.移位运算符在移位操作中,无论左移还是右移,对移出的空位一律补0。

× 21.变量的类型高低是指它被存放在内存的地址值大小。

× 22.使用sizeof运算符可以求得某种类型和某个变量在内存中占的字节数,不能求得某个表达式的类型在内存中所占的字节数。

√ 23.在C++语言中,非保值转换应用强制类型转换。

√ 24.表达式中各操作数计算顺序取决于运算符的优先级和结合性。

√ 25.在C++程序中,变量值是可以改变的,变量的地址值是不能改变的。

√ 26.数组中所有元素的类型都是相同的。

× 27.定义数组时必须对数组进行初始化。

√ 28.数组某维的大小可以用常量表达式,不可用变量名。

× 29.定义一个数组没有对它进行初始化,则该数组的元素值都是无意义的。

√ 30.用来给数组进行初始化的初始值表内的数据项的个数必须小于等于数组元素个数。

× 31.在定义一个数组时,对其部分元素进行了初始化,没有初始化的元素的值都是无意义的。

√ 32.数组被初始化时是判越界的。

× 33.字符数组就是字符串。

√ 34.使用printf( )函数输出显示字符串时使用格式符%s,输出显示字符时使用%c或5%d。

× 35.给数组元素赋值时只可用常量表达式。

  二、单选题

1.下列变量名中,非法的是( C )。

A.A25 _car

-str

2.下列常量中,十六进制int型常量是( A )。

A.0x5f B.x2a

C.046 D.7a

3.下列常量中,不是字符常量的是( B )。

A.'n' B."y"

C.'x' D.'7'

4.在函数体内定义了下述变量a,a的存储类为( D )。

int a;

A.寄存器类 B.外部类

C.静态类 D.自动类

5.下列关于变量存储类的描述中,错误的是( C )。

A.任何变量定义后都具有一个确定的存储类

B.变量的存储类确定了变量的作用域和寿命

C.定义变量时没有存储类说明符者一律为自动类

D.内部静态类变量和外部静态类变量的存储类说明符都是static

6.下列关于变量数据类型的描述中,错误的是( A )。

A.定义变量时int型数据类型可以省略

B.变量的数据类型可以决定该变量占内存的.字节数

C.变量的数据类型是可以被强制的

D.变量的数据类型是有高低之分的

7.长双精度浮点型常量的后缀是( C )。

A.U B.F

C.L D.无

8.下列运算符中,不能用于浮点数操作的是( D )。

A.++ B.+

C.*= D.&(双目)

9.下列运算符中,优先级最高的是( A )。

A.*(双目) B.||

C.>> D.%=

10.下列运算符中,优先级最低的是( B )。

A.== B.?:

C.| D.&&

11.已知:int a(3);下列表达式中,错误的是( C )。

A.a%2==0 B.a--+2

C.(a2)++ D.a>>=2

12.已知:int b(5),下列表达式中,正确的是( D )。

A.b="a" B.++(b1)

C.b%2.5 D.b=3,b+1,b+2

6

13.下列关于类型转换的描述中,错误的是( C )。

A.类型转换运算符是(<类型>)

B.类型转换运算符是单目运算符

C.类型转换运算符通常用于保值转换中

D.类型转换运算符作用于表达式左边

14.下列表达式中,其值为0的是( A )。

A.5/10 B.!0

C.2>4?0:1 D.2&&2||0

15.下列表达式中,其值不为逻辑值的是( A )。

A.算术表达式 B.关系表达式

C.逗号表达式 D.逻辑表达式

16.下列关于数组概念的描述中,错误的是( B )。

A.数组中所有元素类型是相同的

B.数组定义后,它的元素个数是可以改变的

C.数组在定义时可以被初始化,也可以不被初始化

D.数组元素的个数与定义时的每维大小有关

17.下列关于数组维数的描述中,错误的是( C )。

A.定义数组时必须将每维的大小都明确指出

B.二维数组是指该数组的维数为2

C.数组的维数可以使用常量表达式

D.数组元素个数等于该数组的各维大小的乘积

18.下列关于数组下标的描述中,错误的是( B )。

A.C++语言中数组元素的下标是从0开始的

B.数组元素下标是一个整常型表达式

C.数组元素可以用下标来表示

D.数组元素的某维下标值应小于该维的大小值

19.下列关于初始值表的描述中,错误的是( C )。

A.数组可以使用初始值表进行初始化

B.初始值表是用一对花括号括起的若干个数据项组成的

C.初始值表中数据项的个数必须与该数组的元素个数相等

D.使用初始值表给数组初始化时,没有被初始化的元素都具有默认值

20.下列关于字符数组的描述中,错误的是( D )。

A.字符数组中的每一个元素都是字符

B.字符数组可以使用初始值表进行初始化

C.字符数组可以存放字符串

D.字符数组就是字符串

21.下列关于字符串的描述中,错误的是( C )。

A.一维字符数组可以存放一个字符串

B.二维字符数组可以存放多个字符串

C.可以使用一个字符串给二维字符数组赋值

D.可以用一个字符串给二维字符数组初始化

22.已知:int a[5] = {1, 2, 3, 4}; 下列数组元素值为2的数组元素是( B )。

A.a[0] B.a[1]

C.a[2] D.a[3]

7

23.已知:int ab[ ][3] = {{1, 5, 6}, {3}, {0,2}}; 数组元素ab[1][1]的值为( A )。

A.0 B.1

C.2 D.3

24.已知:char s[ ]="abcd";输出显示字符'c'的表达式是( C )。

A.s B.s+2

C.s[2] D.s[3]

25.已知:char ss[ ][6]={"while", "for", "else", "break"};输出显示"reak"字符串的表达式是( B )。

[3] [3]+1

+3 [3][1]