当前位置:问答库>考研试题

2018年辽宁师范大学城市与环境院828C语言程序设计考研核心题库

  摘要

一、选择题

1. 以下选项中合法的标识符是。

A.1_1

B.1-1

C._11

D.1_ _

【答案】C

【解析】C 语言中标识符的命名规则是:标识符由字母、数字和下画线组成,并且第一个字符必须是字母或下画线。C 语言的标识符是区分大小写字母的。

2. 以下不是合法C 语言转义字符的是( )。 A. B. C. D.

【答案】A

【解析】C 语言中,表示响铃,表示退格,表示回车不换行,故答案为A 选项。

3. 设有n 个数按从大到小的顺序存放在数组x 中,以下能使这n 个数在x 数组中的顺序变为从小到大的是( )。

【答案】A

【解析】本题使用for 循环实现数组元素首尾倒置。A 项中控制变量上限为n/2, 用变量t 实现数组下标值i 与的元素交换,使数组元素首尾倒置,从而实现从小到大排列,A 项正确。B 项控制变量上限为m 用变量t 实现数组下标值i 与n-i-1的元素交换,当i=n/2时,已经实现数组首尾倒置,而继续运行至i=n,将再次将新的数组首尾倒置,与原数组相比没有发生变化,依然是

从大到小排列,B 项错误。C 项数组越界,i=0时x[n+ll不存在,C 项错误。D 项控制变量每次加2, 实现数组偶数下标值的元素首尾倒置,奇数下标值元素不变,不能实现整个数组从小到大排列,D 项错误。

4. C 语言程序中,运算对象必须是整型数的运算符是( )。

【答案】C

【解析】模运算中不能出现浮点数,运算对象只能是整数。

5. 有以下程序

程序运行后的输出结果是( )。

A.24

B.28

C.32

D.36

【答案】A

【解析】第一次循环返回12, 第二次循环返回12, 累加结果为24。

6. 设有两行定义语句:

intscanf ;

floatcase ;

则以下叙述正确的是( )。

A. 两行定义语句都不合法

B. 两行定义语句都合法

C. 第1行语句不合法

D. 第2行语句不合法

【答案】D

【解析】预定义标识符是系统已经有过定义的标识符,用户可以重新定义,可以作为变量名。

scanf 为库函数名,属于预定义标识符,可以被用户重定义,第一行语句合法。C 语言关键字是被保留的,不能用作其他用途的一些标识符,它们在程序中都代表着固定的含义,用户不可重新定义。case 是选择结构switch 语句中的关键字,不可被用户重定义,第二行语句不合法。

7. 有以下程序:

程序运行后的输出结果是( )。

A.7, 4

B.4, 10

C.8, 8

D.10, 10

【答案】B

【解析】在C 语言中,strlen ( )用来统计字符串中字符的个数,sizeof ( )是求分配给数组的存储空间大小。题目中字符串a 中字符个数为4, 但由于数组a 定义含有10个字符,所以所占空间大小为10。

8. 有以下程序:

程序运行后的输出结果是( )。

A.1, 2, 1, 2

B.1, 2. 2, 1

C.2, 1, 2, 1

D.2, 1. 1, 2

【答案】B

【解析】本题定义了两个整型变量,然后用两个指针分别指向这两个整型变量,接着对指针进行交换,那么原来指向第一个整数的指针将指向第二个整数,原来指向第二个整数的指针将指向第一个整数。