2017年东北师范大学C程序设计复试仿真模拟三套题
● 摘要
一、选择题
1. 有如下定义:
以下对内嵌结构体成员的引用形式错误的是( )。
【答案】A
【解析】使用结构体指针对结构体成员进行访问时,形式为结构指针名->结构成员名,或者(*结构指针名). 结构成员名,题目中ps 为结构体指针,A 项错误。
2. 以下语句中存在语法错误的是( )。 A. B. C. D.
【答案】A
【解析】A 项错误,数组定义后,不能对数组整体赋值,SS 是二维数组,
组,即字符串,
字符串赋值可以使用
指针数组的一个元素。
3. 有以下程序
程序的运行结果是( )。
A.1
B.0
第 2 页,共 16 页 是一维字符数”的形式,但不能使用赋值的形式。BD 两项正确,在定义时对数组同时进行初始化;C 项正确,将常量字符串在内存中的首地址赋给
C.2
D.3
【答案】A
【解析】只有i=3时,才能进入内部循环。
4. 程序运行后的输出结果是( )。
A.14.0
B.31.5
C.7.5
D. 程序有错无输出结果
【答案】D
【解析】宏定义有两种:无参数的宏定义,即#definePT3.5; 带参数的宏定义,不能用宏来计算,宏只能做简单的代替而不能做计算,故程序会报错。
5. 有以下程序:
程序运行后的输出结果是( )。
A.AAAA
B.CC
C.BBBCC
D.BBBB
【答案】D
【解析】程序中声明一个3行4列的字符型数组。要求输出
故ch[l]为第二行的BBBB 。
6. 有以下程序
第 3 页,共 16 页 由于数组下标默认从0开始,
执行程序时,给变量x 输入10, 程序的输出结果是( )。
A.55
B.54
C.65
D.45
【答案】A
【解析】一个直接或间接地调用自身的算法称为递归算法。在一个递归算法中,至少要包含一个初始值和一个递归关系。本题的fun ( )函数在n 等于1时返回1,而在其余情况下返回所以本题的递归算法可以这样来表示:
此时不难看出,该递归算法实现的是计算而且n 必须大于0, 否则会陷入死循环。 故题目输出的结果是
7. 以下选项中叙述错误的是( )。
A.C 程序函数中定义的赋有初值的静态变量,每调用一次函数,赋一次初值
B. 在C 程序的同一函数中,各复合语句内可以定义变量,其作用域仅限本复合语句内
C.C 程序函数中定义的自动变量,系统自动赋确定的初值
D.C 程序函数的形参不可以说明为static 型变量
【答案】A
【解析】在整个程序运行期间,静态局部变量在内存的静态存储区中占据着永久性的存储单元。即使退出函 数以后,下次再进入该函数时,静态局部变量仍使用原来的存储单元。由于并不
释放这些存储单元,因此这些存 储单元中的值得以保留,因而可以继续使用存储单元中原来的值。
8. 构成C 程序的三种基本结构是( )
A. 序结构、转移结构、递归结构
B. 顺序结构、嵌套结构、递归结构
C. 顺序结构、选择结构、循环结构
D. 选择结构、循环结构、嵌套结构
【答案】C
【解析】结构化程序由三种基本结构组成:顺序结构、选择结构和循环结构。已经证明,由三种基本结构组算法可以解决任何复杂的问题。
二、设计题
9. 请根据以下各小题的要求设计C 应用程序(包括界面和代码)。
请编写函数fun ( ),该函数的功能是:计算并输出给定整数n 的所有因子(不包括1和自身)之和。规定n 的值不大于1000。例如,在主函数中从键盘给n 输入的值为856, 则输出
第 4 页,共 16 页
相关内容
相关标签