2017年中国人民大学信息学院(专业学位)程序设计考研复试核心题库
● 摘要
一、选择题
1. 以下选项中,能用作用户标识符的是( )。
【答案】C
【解析】标识符是由若干个字符组成的字符序列,用来命名程序的一些实体。C 语言定义标识符应遵循以下六种规则:①标识符由字母、数字或下划线组成;②第一个字符必须是字母或下划线;③标识符最多由274个字 符组成;④在标识符中严格区分大小写字母;⑥关键字不能作为自定义的标识符在程序中使用。
2. 以下四个程序中,完全正确的是( )。
【答案】B
【解析】A 项中,“main ( )”函数后面不能加分号;C 语言中注释语句的注释方法是
:
或//注释一行,
且
“indUde
3. 有以下程序:
程序运行后的输出结果是( )。 A.02 B.13 C.57 D.12
【答案】D
第 2 页,共 23 页
和不能嵌套使用,C 项错误; D 选项中预编译命令
【解析】(表达式1)(表达式2)中,如果表达式1为假或0, 那么表到式2就不会被
和
为零,不满足循环条件,所以
执行。本题中首先进入while 的判断语句,执行
不会被执行,while 循环结束后,k 经过运算自增为1, n没有进行运算,仍为2。
4. 下列叙述中错误的是( )。
A.C 程序在运行过程中所有的计算都以二进制方式进行 B.C 程序在运行过程中所有的计算都以十进制方式进行 C. 所有的C 程序都需要在连接无误后才能运行
D.C 程序中整型变量只能存放整数,实型变量只能存放浮点数 【答案】B
【解析】在C 程序运行过程中,编译器的作用是将程序转换为目标代码,目标代码都是二进制的。
5. 以下关于算法的叙述中错误的是( )
A. 算法可以用伪代码、流程图等多种形式来描述 B. —个正确的算法必须有输入 C. 一个正确的算法必须有输出
D. 用流程图可以描述的算法可以用任何一种计算机高级语言编写成程序代码 【答案】B
【解析】一个正确的算法可以有零个或者多个输入,必须有一个或者多个输出。
6. 下列关系表达式中,结果为“假”的是( )。
A. (3+4)>6 B. C. D.
【答案】B
【解析】A 项,先执行:为假;C 项,先执行
即为1,再执行1==1,结果为真。
7. 若有定义语句intb=2;, 则表达式
A.4 B.8 C.0 D.2
【答案】B
结果为真;B 项,先执行
为真,即为1,1>2结果
结果为真,即1,再逻辑或3, 结果为真;D 项,先执行3<4结果为真,
的值是( )。
【解析】b=2, 转为二进制即为0010,首先将b 左移两位,变成1000,即十进制的8, 3llb 的
第 3 页,共 23 页
值为真即为1, 最后计算8/1的值,为8。
8. 以下不能正确表示代数式
【答案】D 【解析】
优先级相同,所以采用从左到右结合的方式。D 项,应该改为:
的C 语言表达是( )。
二、设计题
9. 规定输入的字符串中只包含字母和*号。请编写函数fun ,其功能是:使字符串中尾部的*号不多于n 个若多于n 个,则删除多余的*号;若少于或等于n 个,则不做任何操作,字符串中间和前面的*号不删除。例如,字 符串中的内容为后,字符串中的内容应;函数。
注意:部分源程序给出如下。
请勿改动主画数main 和其他函数中的任何内容,仅在函数fun 的花括号中填入你编写的若干语句。试题程序:
【答案】
第 4 页,共 23 页
若n 的值为4,删除
若n 的值为7,
则字符串中的内容仍为
n 的值在:函数中输入。编写函数时,不得使用C 语言提供的字符串