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时
,