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

2016年中北大学软件学院程序设计基础复试笔试最后押题五套卷

  摘要

一、选择题

1. 有以下程序:

以上程序执行后abc. dat文件的内容是( )。

A.China

B.Chinang

C.ChinaBeijing

D.BeijingChina

答:B

【解析】pf 是一个文件指针,

语句

是将

的前

是将文件位置指针移回到文件开头,语句写入五个字符,所以结果为Chinang 。

2. 若变量已正确定义,有以下程序段:

其输出结果是。

A. 程序段有语法

B.3, 5,3

C.3, 5, 5

D.3, 5, 7

答:B

【解析】当a>b时,令a=b, a=3,b=5,因此a>b条件不成立,所以不执行a=b。然后c=a=3。此时“c!=a”条件不成立,不执行“c=b; ”语句。结果为a=3, b=5, C=3。

执行后,fp 指向可读写的二进制文

个字符的内容写入中,即Beijing

。是从文件的开头位置向

3. 当没有指定C 语言中函数形参的存储类别时,函数形参的存储类别是( )。

A. 外部(extern )

B. 静态(static )

C. 寄存器(register )

D. 自动(auto )

答:D

【解析】auto 变量又称为自动变量,函数定义变量时,如果没有指定存储类别,系统就认为所定义的变量具 有自动类别,D 选项正确。static 变量又称为静态变量,编译时为其分配的内存在静态存储区中。register 变量又 称为寄存器变量,变量的值保留在CPU 的寄存器中,而不是像一般变量那样占内存单元。当定义一个函数时, 若在函数返回值的类型前加上说明符extern 时,称此函数为外部函数,外部函数在整个源程序中都有效。

4. fun 函数的功能是:通过键盘输入给x 所指的整型数组所有元素赋值。在下画线处应该填写的是( )。

A.

B.

C.

D.

答:D

【解析】数组名本身就是地址,所以不需要用符号。C 选项不能对所有元素赋值而是反复给一个数值赋值且是死循环。

5. 若程序中有宏定义行:

#defineN100

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

A. 宏定义行中定义了标识符N 的值为整数100

B. 在编译程序对C 源程序进行预处理时用100替换标识符N

C. 上述宏定义行实现将100赋给标识符N

D. 在运行时用100替换标识符N

答:D

【解析】D 项正确,预处理程序对源程序中所有使用宏名的地方进行直接替换。A 项错误,宏定义没有类型限制;B 项错误,预处理程序进行宏替换,而非编译程序;C 项错误,宏定义不是赋值操作,而是进行在预编译时进行替换。

6. 下列叙述中错误的是( )。

A.C 程序可以由一个或多个函数组成

B.C 程序可以由多个程序文件组成

C. 一个C 语言程序只能实现一种算法

D. —个C 函数可以单独作为一个C 程序文件存在

答:C

【解析】一个C 语言程序可以实现任意多种算法,并没有数量限制

7. 有定义语句以下选项中与此语句等价的是( )。

A. B. C. D.

答:C

【解析】定义指针数组的格式为因为[]的优先级高于因此等价于而D

定义的是数组指针变量,指针p 指向含有四个整型元素的数组。

8. 下面是有关C 语言字符数组的描述,其中错误的是( )。

A. 不可以用赋值语句给字符数组名赋字符串

B. 可以用输入语句把字符串整体输入给字符数组

C. 字符数组中的内容不一定是字符串

D. 字符数组只能存放字符串

答:D

【解析】字符数组可以用来存放单个的字符或者字符串。

9. 有以下程序:

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

A.-1

B.0

C.1

D.7

答:A 【解析】

和运算,当以前缀形式出现时,则先进行加一或减一操作,再取值,当

直到while 判断为0以后缀形式出现时,贝U 先取值,再进行加一或减一操作。程序中执行