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

2017年东北师范大学C++程序设计(同等学力加试)考研复试核心题库

  摘要

一、选择题

1. 以下不构成无限循环的语句或者语句组是。 A.

B.n=0:

C.n=10:

D.

【答案】A

【解析】A 项,为do-while 循环语句,首先执行do 后面的语句得n=l,while 条件表达式为假,退出循环;B 项,while 条件表达式的值始终为1,条件为真,构成无限循环;C 项,while (n ); 语句循环体为空,n 的值在循环中一直保持不变,构成无限循环;D 项,i=l,for 语句中条件判断语句为空,永远为真,构成无限循环。

2. 以下不能将键盘输入的字符串:This is a string〈回车〉读入到str 中的程序段是( )。 A. B. C. D.

【答案】A

【解析】在使用scanf 函数时,在输入数据时,遇到空格,或按“回车”键或按“跳格”(Tab )键时该数据 认为结束。A 项中输入This 后有一个空格,认为数据输入结束,以后的数据不能再读入到str 中,故选择A 项。 B 项用getchar 读人字符,键盘输入的所有字符均被认为是有效字符读入,用while 循环控制读入,当读入字符为 回车时结束读入,字符串被正确的读入到str 中。C 项用gets 函数读入字符串,它读入键盘输入的所有字符,遇到回车自动结束读入,所以也能正确读入字符串到str 中。D 项用do...while 和指针循环控制字符输入,依次判断输入字符是否为回车符,若不是回车符则放人字符数组中,直到读入回车符,结束循环,数组str 中正确存放人指定的字符串。

3. 有以下程序

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

【答案】A

【解析】注释之间计算机不参与编译,所以a 、b 值仍为0。

4. 设有如下函数定义:

若执行调用语句:

A.2

B.3

C.4

D.5

【答案】B

会返

5. 有以下程序:

程序的运行结果是( )。

【答案】C

【解析】在funO 函数中,表示X 取值为a 的小数部分,因此,输入a 为

则函数fun ( )总共被调用的次数是( )。 【解析】函数fun 为递归函数,递归结束条件是k 为小于等于1的数。执行fun (3)语句时

即执

行时会返

即执

行时会返回1,所以函数fun 总共被调用3次。 输

出。

6. 设有以下函数:

则下面对函数指针的定义和赋值均是正确的是( )。 A. B. C. D.

【答案】D

【解析】函数指针的一般定义形式为:数据类型(*指针变量名)( )。定义函数指针时,对应的类型名以及 返回值类型都要和对应函数的参数列表以及返回值类型一致。在给函数指针赋值时,可以直接将函数名赋值给对 应的函数指针,也可以将函数名取地址后在赋值给对应的函数指针。ABC 三项中函数指针的定义均是错误的, 参数列表和fun 函数的参数列表不一致。

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

下面关于语句执行情况的叙述中正确的是( )。

A. 循环体执行一次

B. 循环体执行两次

C. 循环体一次也不执行

D. 构成无限循环

【答案】A

【解析】本题中k 初始值为-1,执行一次循环体,执行完后k 值为0, 不满足k<0条件,退出循环,所以执行了一次。

8. 有如下程序: