2017年南京大学2307,生物医学工程专业综合之C语言程序设计教程考研复试核心题库
● 摘要
一、选择题
1. 以下叙述正确的是( )。
A. 文件指针是指针类型的变量
B. 在使用文件指针时,不需要在内存中为其分配空间
C. 文件指针变量的值是文件的当前读取位置
D. 调用fscanf 函数能向所有类型的文件中写入任意字符
【答案】A
【解析】A 项正确,文件指针是指向文件类型的指针变量;B 、C 项错误,文件指针指向的是文件缓冲区,而不是文件本身位置;D 项错误,fscanf ( )函数作用是从指定的文件中格式化读数据,读取数据类型由格式控制符决定。
2. 以下叙述中错误的是( )。
A. 使用三种基本结构构成的程序只能解决简单问题
B. 结构化程序由顺序、分支、循环三种基本结构组成
C.C 语言是一种结构化程序设计语言
D. 结构化程序设计提倡模块化的设计方法
【答案】A
【解析】结构化程序由顺序、分支和循环三种基本结构组成,由三种基本结构组成的算法可以解决任何复杂 的问题。由三种基本结构所构成的算法称为结构化算法;由三种基本结构所构成的程序称为结构化程序。
3. 若有以下函数首部
则下面针对此函数的函数声明语句中正确的是( )。 A. B. C. D.
【答案】A
【解析】函数声明应该和函数调用的参数保持一致,声明时的参数(形参)名字可以省略,数组在参数传递过程中变成指针。
4. 有以下程序
执行后的输出结果是( )。
A.2
B.3
C.7
D.0
【答案】A
【解析】函数的递归调用,调用过程如下表所示。
5. 以下不能用于实型数据的运算符是( )。
A.%
B./
C.*
D.+
【答案】A
【解析】“%”符号两边必须是整数,因此答案为A 项。
6. 有如下程序:
程序运行后的输出结果是( )。
A.FDBXX
B.FFFXX
C.FDBBB
D.ABCDE
【答案】A
【解析】对数组进行初始化时,如果在说明数组时给出了长度,但没有给所有的元素赋予初始值,而只依次给前面的几个数组元素赋予初值,那么C 语言将自动对余下的元素赋初值,
即
程序执行过程为:执行for 循环,将数组首地址赋给指针prr ,依次遍历每
一个元素,如果数组元素为0则输出‘X ’,如果不为0则按照字母表输出字符‘A ’后第个字符。程序运行后的输出结果为:FDBXX ,故A 项正确。
7. 有以下程序:
程序运行的结果是( )。
A.1
B.2
C.3
D.4
【答案】B
【解析】本题主要考查函数的递归调用。fun 函数的功能是:当b 的值为零时,返回此时a 的值;否则,返 回即将a 和b 的值分别减1后返回fun 函数的本质是返回a-b 的值,因此最终的结果为2。
8. 以下选项中错误的是( )。 A. B. C. D.
【答案】D
【解析】D 项,
误,表示a 不等于b 时,运算结果为1,或者为0; 而^是一种语法错是非运算,且是单目运算符,只要求有一个操作数,故两者不等价。