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

2018年北京市培养单位高能物理研究所864程序设计[专硕]之C程序设计考研强化五套模拟题

  摘要

一、选择题

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

A.C 程序总是以main ( )作为程序执行的起始行

B.main ( )函数若不带参数,其后面的一对圆括号可省略

C. 函数体内的定义语句和可执行语句允许任意穿插出现

D.C 语言中的语句之间必须用分号作为分隔符

【答案】A

【解析】main ( )函数后面的括号告诉编译器这是一个函数,不可以省略,排除B 选项;在复合语句中,不仅可以有执行语句,还可以有定义语句,定义语句应该出现在执行语句的前面,故排除C 选项;C 语言中的某些语句可以不用分号,例如if 语句,宏定义,故D 选项错误;答案为A 选项。

2. 有以下程序:

程序运行的结果是( )。

A.331

B.41

C.2

D.1

【答案】D

【解析】C 语言规定:else 子句总是与前面最近的不带else 的if 相结合,与书写格式无关。本题中的else 语句与第二个if 语句配对。程序首先判断x>y不成立,直接退出if 语句,

执行

注意,x++是先输出,后做++运算,故首先输出x 的值1,然后将X 的值

加1。

3. 以下可以将任意一个两位整数n 的个位数与十位数对换的表达式为( )。

A. (n-n/10×10)×10+n/10

B.n-n/l0×l0+n/10

C.n/10+(n-n/10)

D. (n-n/10)×10+(n/10)

【答案】A

A 项n/10得到十位数字,n-n/10得到个位数字,【解析】将个位数乘以10加上十位数字,(n-n/10

×10)×l0+n/10实现将任意一个两位整数个位数与十位数对换,A 项正确。B 项n-n/10×10得到个位数字,n/10为十位数字,n-n/10×l0+n/10实现两位整数个位数与十位数之和,B 项错误。C 项n/10+(n-n/10)=n, 不能实现题目中要求,C 项错误。D 项n/10是十位数字,n-n/10为原两位整数减去十位数字,不是个位数字,D 项错误。

4. C 语言整数不包括( )。

A. 带小数点的整数

B. 正整数

C. 负整数

D. 无符号整数

【答案】A

【解析】C 语言整数包括正整数,负整数,无符号整数,不含带小数点的整数。

5. 以下能正确定义字符串的语句是( )。 A. B. C. D.

【答案】A

【解析】字符串末尾一定要有结束标记,双引号括起来的字符串系统会默认添加结束标记。A 项正确,定义 了空字符串str 。B 项错误,str 是char 类型变量,不能用字符串为其赋值;C 项错误,字符串应该用双引号括起 来;D 项错误,如果一个字符数组用来作为字符串使用,一定要人为加入字符串中

6. 有以下程序

但是str 缺少结束符。

程序的运行结果是( )。

A.Afternoon

B.flemoon

C.Morning

D.oming

【答案】A

p 指向a[0], 在函数fun 中执行【解析】用字符串数组a 给形参p 赋初始值,则p 指向

程序运 行结果是Afternoon 。

7 设变量己正确定义 ,.以下不能统计出一行中输入字符个数(不包含回车符)的程序段是( )。

A )

C )

【答案】D

【解析】要统计一行中输入字符个数(不包含回车符)的程序实现,首先定义一个用作统计的变量m 因为用作统计,所以需要赋初值为0; 因为字符结束要加换行符,故判断该行字符没有结束的程序实现应为

getohar

8. 有以下程序:

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

A.1

B.2

C.4

D.8

【答案】D

【解析】f (l )输出2,然后调用f (2)输出4, 再调用f (4)输出8。

9. 有如下程序:

B )D ) 由此具体实现语句用for 循环应