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

2018年北京市培养单位遥感与数字地球研究所864程序设计之C程序设计考研基础五套测试题

  摘要

一、选择题

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

A. 只要是用户定义的标识符,都有一个有效的作用域

B. 只有全局变量才有自己的作用域,函数中的局部变量没有作用域

C. 只有在函数内部定义的变量才是局部变量

D. 局部变量不能被说明为static

【答案】A

【解析】A 项正确,标识符的“作用域”是指程序中的某一部分中,标识符是有定义的,可以被C 编译和 连接程序所识别。在C 语言中,由用户命名的标识符都有一个有效的作用域。B 项错误,局部变量的作用域是所 在的函数体(或复合语句);C 项错误,在函数内部或复合语句内部定义的变量,称为局部变量;D 项错误,在 函数体(或复合语句)内部用static 来说明一个变量时,变量为静态局部变量。

2. 有如下程序:

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

A.A45D78

B.ABC678

C.34CD78

D.34AB78

【答案】A

【解析】本题执行过程为:if 条件不成立执行else 函数体,i%3=l, if 输出字符A ; i=l,

条件成立输出字符4; i=2, i%3=2, if 条件成立输出字符5; i=3, if 条件不成立,输出字符D ; i=4和i=5

时,分别输出字符7与8; i=6退出for 循环。所以程序运行后输出结果为A45D78, 故A 项正确。

3. 有以下程序:

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

【答案】A

【解析】程序执行过程为:定义STU 类型数组,长度为2, 并初始

调用函数将变量S[l]地址传人函数,函数执行后

结果为

故A 项正确。

4 若有定义语句:.

误的是( )。

【答案】C

【解析】:数组的下标从零开始,数组m 中有5个元素,所以数组m 即

C 项,但是数组下标范围是 所以溢出引用错误。

依次输出 则下面对m 数组元素的引用中错引用数组元素为

5. 有以下程序:

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

A.1,2,1,2

B.1,2,2,1

C.2,1,2,1

D.2,1,1,2

【答案】B

【解析】本题首先让指针变量p 和q 分别指向m 和n 的地址空间,然后将p 赋值给r ,让r

指向m ,q 赋值给p ,让p 指向n ,再将r 赋值给q ,让q 指向m ,因此最后p 指向n ,q 指向m 。

6. 关于C 语言的变量名,以下叙述正确的是( )。

A. 变量名不可以与关键字同名

B. 变量名不可以与预定义标识符同名

C. 变量名必须以字母开头

D. 变量名是没有长度限制的

【答案】A

【解析】合法的标识符由字母(大、小写均可)、数字和下划线组成,并且必须以字母或下划线开头。关键字是指被C 语言保留的,不能用作其他用途的标识符,它们在程序中都代表着固定的含义,用户不可重新定义,A 项正确。预定义标识符是系统已经有过定义的标识符,用户可以重新定义,所以可以作为变量名,B 项错误。变量名除了以字母开头以外,还可以以下划线开头,C 项错误。变量名没有长度限制,但不可超过编译器可以辨识的范围,D 项错误。

7. 以下程序段中,与其他三个功能不同的程序段是( )。

【答案】A

【解析】B 、C 、D 项都表示对1到10进行累加后赋给s ,而A 项中含break 语句,循环体只执行一次,结束整个循环过程。