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

2017年中国刑事警察学院计算机软件综合之C语言程序设计教程复试实战预测五套卷

  摘要

一、选择题

1. 有以下程序:

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

【答案】A

【解析】sqrt 为平方根计算函数,

2. 有以下程序:【程序中含有错误】

程序运行的结果是( )。

A.0

B.10

C.20

D. 出错

【答案】C

格式输出后为

【解析】函数fun 的功能是:动态分配int 型大小的内存空间,指针P 指向该存储区的首地址,并将它初始化为参数n 的值,然后返回这个值,函数将传递给形参的变量保存在该存储区。a=fim(10)=10,则a+fun(10)=20。

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

A. 简单递归不需要明确的结束递归的条件

B. 任何情况下都不能用函数名作为实参

C. 函数的递归调用不需要额外开销,所以效率很高

D. 函数既可以直接调用自己,也可以间接调用自己

【答案】D

【解析】D 项正确,C 语言中的函数可以递归调用,S 卩:可以直接或间接地自己调用自己。前者称简单递归, 后者称间接递归。A 项错误,递归必定要有一个明确的结束递归的条件;B 项错误,递归就是把函数名作为实参 的一种特殊情况;C 项错误,函数的递归调用过程中,系统要为每一层调用中的变量开辟存储单元,要记住每一层调用后的返回点,要增加许多额外的开销,通常会降低程序的运行效率。

4. 若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确的是( )。

A. 函数的形参和实参分别占用不同的存储单元

B. 形参只是形式上的存在,不占用具体存储单元

C. 同名的实参和形参占同一存储单元

D. 函数的实参和其对应的形参共占同一存储单元

【答案】A

【解析】函数体中,变量(包括形参)只在函数被调用时才临时开辟存储单元,当退出函数时,这些临时开辟的存储单元全被释放掉。C 语言中函数调用可以分成传值和传引用,传值调用,形参是实参的数据拷贝;传引用调用,形参是实参的指针拷贝;所以,形参和实参占用不同的存储单元。

5. 若有定义语句

【答案】B

【解析】根据优先级先计算由于z

定义为整型,故最终结果为1。

其后执行语句则z 的值为( )。

即由于是整型,故的值为1,接着计算

6. 表达式:(int )((double )9/2-(9)%2)的值是( )。

A.0

B.3

C.4

D.5

【答案】B

,【解析】运算符“/”“%”的优先级高于“-”故先进行除法和求余运算,再进行减法运算。

强制类型转换表达式的形式为:(类型名)(表达式)。“9/2”转换成double 类型,再转换成int 类型,结果为4, 减号后面的结果为1,故结果为3。

7. 以下程序段中,与其他三个功能不同的程序段是( )。

【答案】A

【解析】B 、C 、D 项都表示对1到10进行累加后赋给s ,而A 项中含break 语句,循环体只执行一次,结束整个循环过程。

8. 有以下程序:

程序运行的结果是( )。

【答案】A

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