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

2018年中国地质大学(武汉)信息工程院952软件综合之C程序设计考研核心题库

  摘要

一、选择题

1. 有以下程序:

程序的运行结果是( )。 A.4 B.5 C.6 D.7

【答案】C

【解析】fun 函数是递归函数,用来计算从0到n 的整数和。调用fun 函数,n=3,

返回

【程序有错

2. 有以下程序(其中k 的初值为八进制数):

程序运行后的输出结果是( )。 A.12 B.11 C.10 D.9

【答案】D

k 的初值是八进制数011, 转换为十进制数就是9,

在输出时自增运算符【解析】

缀出现的,因此是先输出9, 然后k 的值再自增1。

3. 以下选项中的编译预处理命令行,正确的是( )。

A.#definePI3.14 B.##defineeps0.001 C.#DEFINETRUE D.#defineintINT

第 2 页,共 40 页

应为】

是作为后

【答案】A

【解析】A 项正确。不带参数的宏定义是用一个指定的标识符来代表一个字符串,其一般形式如下:#define宏名替换文本。需要注意:①在#define、宏名和替换文本之间用空格隔开;②在C 程序中,宏定义的定义位置一般写在程序的开头;③宏名一般用大写字母表示,便于与变量名区别;④宏定义是用宏名来表示一个字符串,在宏展开时以该字符串取代宏名,这只是一种简单的代换,预处理程序对它不做任何检查;⑤宏定义不是语句,在行末不加分号,如加上分号则连分号也一起替换。B 项define 前多了一个#。C 项缺少“替换文本”。D 项不能将一个自定义标识符宏定义为关键字。

4. 有如下程序:

程序运行后的输出结果是( )。 A.ABCDDCBA B.ABCD C.A

D.DCBA 【答案】D

【解析】本题程序的执行过程为:调

用语句后的输出语句,

输出

执行

函数

执行

执行

if 条件成

中if

if 条件不成立,输出

中if 语句后的输出语句,

输出

中if 语句后的输出语句,输出A ,函数调用完成。程序运行后的输出结果是DCBA 。

5. 有如下程序:

第 3 页,共 40 页

程序运行后的输出结果是( )。 A.FDBXX B.FFFXX C.FDBBB D.ABCDE 【答案】A

【解析】对数组进行初始化时,如果在说明数组时给出了长度,但没有给所有的元素赋予初始值,而只依次给前面的几个数组元素赋予初值,那么C 语言将自动对余下的元素赋初值,

程序执行过程为:执行for 循环,将数组首地址赋给指针prr ,依次遍历每

一个元素,如果数组元素为0则输出‘X ’,如果不为0则按照字母表输出字符‘A ’

后第个字符。程序运行后的输出结果为:FDBXX ,故A 项正确。

6. 有以下程序:

程序运行后的输出结果是( )。 A.3 B.5 C.7 D.9

【答案】A

【解析】本题中for 语句的主体为一个switch 语句,switch

语句的判断条件

,然后终止本层

否则执行

语句然后再执行

语句。所以当时:

C 当时:

7. 以下选项中,值为1的表达式是( )。

【答案】C

【解析】ASCII 码表

选C 。

第 4 页,共 40 页

时执行

语句并终止本层switch

时for 循环结束。结果为3。