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

2017年北京市培养单位国家天文台864程序设计考研题库

  摘要

一、选择题

1. 有以下程序:

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

A.42

B.0

C.1

D.41

【答案】C

【解析】main 函数中定义了3个变量,a ,b 和指针变量q ,并且q 存放的是a 的地址,fun 函数中s 是重新分配的空间,将重分配的空间中存放*pl和*p2即为1和40,然后释放s ,而q 没有变化,仍然指向变量a ,故*q仍然为1。

2. 以下关于函数的叙述中正确的是( )。

A. 函数调用必须传递实参

B. 函数必须要有形参

C. 函数必须要有返回值

D. 函数形参的类型与返回值的类型无关

【答案】D

【解析】函数参数有两种:形式参数和实际参数,前者函数定义时函数名后括号内是形参列表,每个形参由类型和名称两部分组成。在定义函数时,系统并不给形参分配存储单元,当然形参也没有具体的数值,所以称它为形参,也称虚参。形参在函数调用时,系统暂时给它分配存储单元,以便存储调用函数时传来的实参。一旦函数结束运行,系统马上释放相应的存储单元;后者函数调用时函数名后括号内是实参列表,实参可以是常量、变量或表达式。当函数返回到主调函数时,有时会有数据带给主调函数,也可以没有任何数据返回给主调函数,返 回的数据称为函

数的返回值。函数形参的类型与返回值的类型无关,D 选项正确。函数可以没有形参,B 选项错误。函数可以没有返回值,C 选项错误。函数如果没有形参也就不必传递实参,A 选项错误。

3. 下列选项中,能正确定义数组的语句是( )。

A

) B

【答案】C C )

D )

【解析】一维数组定义格式是:类型名数组名[整型常量表达式]。C 项正确,它使用预处理宏定义,N 可以看做是常量。A 项错误,数组长度不能由变量指明;B 项错误,没有指明数组的长度;D 项错误,数组长度应该整型常量表达式。

4. 有以下程序:

若要使程序的运行结果为248, 应在下画线处填入的是( )。

A.

B.1248 C. D.

【答案】D

【解析】要输入248,是124的两倍,124为01111100,248为11111000,因此只要左移一位即可。

5. 有以下程序

程序输出( )。

A.0, 0, 0, 3

B. 编译有错

C.1, 1, 2, 0

D.0, 1, 2, 0

【答案】B

【解析】c=2不属于if 子句,它是在if 和else 之间的语句,如果该if 子句含有多个语句(两

,则必须使用复合语句,即用花括号把一组语句括起来。在程序中else 必须与if 配对,个以上)

共同组成一条if-else 语句,中间不能出现其他语句。

6. 有以下程序:

程序的运行结果是( )。

A.21,18

B.81,81

C.21,21

D.18,18

【答案】A

,替换过程是,用宏调用提供的实参字符串,【解析】带参数的宏的调用格式:宏名(实参表)

S 直接置换宏定义命令行中相应形参字符串,非形参字符保持不变。(k+j+2•被置换成k+j+2*k+j+2,

计算时先计算2*k,结果为21; S (j+k+2.被置换成j+k+2*j+k+2,计算时先计算2*j,结果为18。程序的运行结果是21,18,故A 选项正确。

7. 执行以下程序段后,S 的值为( )。

A.13

B.16

C.17

D.45

【答案】B

【解析】

8. 若有以下程序

则程序的输出结果是( )。

A.11,2

B.25,2

C.11,12

D.25,26

的作用是访问数组a 中下标为k

的元素。 k=0时