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

2018年中南林业科技大学计算机与信息工程院805高级程序设计语言之C程序设计考研核心题库

  摘要

一、选择题

1. 以下程序:

程序运行后的结果是( )。 A.1 3 7 B.7 3 1 C.7 3 D.3 7

【答案】D

【解析】函数fun 是递归函数,递归终止条件是x 小于等于4, 当大于等于4是递归调用

第一次循环

调用

跳出if 循环,执行输出x=3, 然后回到第一次循环,执

行if 循环的语句,输出x=7。

2. 有以下程序:

程序运行的结果是( )。

【答案】A

【解析】在C 语言中,函数参数传递的作用是“传值”,形参和实参是两个没有关系的变量。函数fun 交换了参数值,但只是交换了形参的值,结果并不会传递给实参。所以数组c 没有发生变化,原样输出。

3. 以下叙述正确的是( )

A.C

编译程序把文件后缀为B.C

编译程序把文件后缀为D.

链接程序把文件后缀为【答案】A

【解析】C 编译程序把文件后缀为C 的源程序文件编译成文件后缀为.obj 的二进制文件,链接将一个或多个 目标文件与程序用到的库文件连接起来,形成一个可以在操作系统直接运行的执行程序.exe ,

故排除项,A 选项正确。

4. 若以下选项中的变量全部为整型变量,且已正确定义并赋值,则语法正确的switch 语句是( )。

的源程序文件编译成文件后缀为.obj 的二进制文件 的源程序文件编译成文件后缀为.exe 的可执行文件 的源程序文件链接成文件后缀为.exe 的可执行文件

C.C 编译程序把文件后缀为.obj 的二进制文件编译成文件后缀为.exe 的可执行文件

【答案】D

【解析】A 项错误,case 后面的应该为整形或字符型常量;B 项错误,switch 后面的表达式需要在括号内;C 项错误,case 和后面的常量表达式应该由空格隔开。

5. 下面关于位运算符的叙述,正确的是( )。

A.&表示“按位与”的运算 B.#表示“按位异或”的运算

C. 表示“按位或”的运算

D. 〜表示“按位异或”的运算 【答案】A

【解析】C 语言提供的六种位运算符,如下表所示,

6. 有以下程序

执行后的输出结果是( )。 A.32 B.24 C.5 D.40

【答案】A

【解析】自增运算符“++”分为前缀和后缀两种形式。两种形式的作用效果是一样的,都是使运算分量的值 加1,但是它们的表达式的值不一样,前缀形式表达式的值为运算分量加1之后的值,而后缀形式表达式的值为 运算分量加1之前的值。题目中使用了一个for 循环,循环变量i 从1递增到40。在循环体中有两条嵌套的if 语 句,

首先判断之前的值)是否能被5整除(判断后i 被加1),

然后再判断此时

成立,此时

被8整除(判断后i 被加1), 若两个条件都满足了,就输出i 的值,

只有

7. 若k 是int 类型变量,且有以下for 语句:

下面关于语句执行情况的叙述中正确的是( )。 A. 循环体执行一次 B. 循环体执行两次

即判断i++的值(i 加1

的值(i 加1之后的值)是否能

时,满足