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

2016年西华师范大学数学与信息学院C语言程序设计(同等学力加试)考研复试题库

  摘要

一、选择题

1. 若有函数:

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

A. 调用fun 函数时只有数组执行按值传送,其他实参和形参之间执行按地址传送 B. 形参a 和n 都是指针变量

C. 形参a 是一个数组名,n 是指针变量

D. 调用fun 函数时将把double 型实参数组元素一一对应地传送给形参a 数组 答:B

【解析】AC 两项错误,函数中的形参一个指针,并没有把数组的元素顺序赋值。 2 若有定义语句.

A.

B.

C.

D. 答:C

已经退化为一个指针;D 项错误,fun 中只是传入

则下面对m 数组元素的引用中错误的是( )。

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

C 项,访问数组元素为

〜4, 可见会溢出,会引起错误。

3. 有如下程序:

第 2 页,共 34 页

,但是数组申请的空间是0

程序运行后,在当前目录下会生成一个A.E B.EOF C.ABCDE D.A 答:A

向文件输入A ,关闭文件件

退出循环

文件,其内容是( )。

【解析】程序执行过程为:i=0时,以只写方式打开一个文本文件

时,再次以只写方式打开_文件中内容为E 。

覆盖原本的A ,关闭文件;之后文件内的值依次为C 、D 、E ,当

4. 有以下程序

程序运行后的输出结果是( )。 A.9284 B.9824 C.6982 D.6385 答:D

调用函数fputo

调用函数fputc 向文件输入B 时,文件内为E , 然后关闭文

【解析】p 定义了两个字符串指针,p[0]指向c[0], p[l]指向c[l]。所以,p[i][j]

等价于

作用是把字符串p[i]转化成10进制数,注意到内层循环中

中的第0个,第2个元素,取c[l]中的第0个,第2个元素。

5. 若有以下定义和语句:

则输出结果是( )。 A.5 5 B.10 5 C.10 7 D.5 8 答:A

【解析】strlen 函数是测试字符串长度的函数,求字符串的实际字符个数,不包括字符

第 3 页,共 34 页

结果取c[0]

内,

在字符义字符

6. 以下程序:

之后的所有字符均不计入长度中。所以的含义是一个字符【程序有错,

应为

而以】

开头的字符序列是转

所以

所以s2

所指向的内容实际上是

程序运行后的结果是( )。 A.1 3 7 B.7 3 1 C.7 3 D.3 7 答:D

【解析】函数fun 是递归函数,递归终止条件是x 小于等于4, 当大于等于4是递归调用第一次循环

调用

跳出if 循环,执行输出x=3, 然后回到第一次循环,执

行if 循环的语句,输出x=7。

7. 有以下程序:

程序运行以后的输出结果是( )。 A.7 B.8 C.9 D.10 答:C

【解析】如果函数的定义在调用之后,则必须要在调用之前声明函数。静态局部变量,在整个程序的运行期 间均有效。函数f 将整型变量a 定义为静态变量,所以每次调用函数f 时不再为a 重新赋值。第一次调用f 后,n=4, a=2,第二次调用时,a 已经变成了 2, 所以结果为4+5=9。

第 4 页,共 34 页