2018年北京市培养单位生命科学院864程序设计之C程序设计考研核心题库
● 摘要
一、选择题
1. 有以下程序
若运行时从键盘上输入
A.OPEN THE DOOR
B.OPEN tHE dOOR
C.open the door
D.Open The Door
【答案】c
fun 函数中对大字字母执行【解析】
码表中,同一字母的小写编码比大写编码大32。
2. 有以下程序:
第 2 页,共 45 页 程序的输出结果是( )。 即把从大写变成了小写。在
程序运行后的输出结果是( )。
【答案】D
【解析】D 项正确,main 函数中,首先为结构变量a ,b 初始化,再调用函数f ( ),在f ( )函数中,使用结构体变量a 对指针b 指向的结构体进行赋值,使得指针b 指向的结构体成员依次赋值为结构体a 的成员,然后依次输出指针b 指向的结构体成员的值;由于f 函数
形参b 为指针,所以指针b 指向的值被修改为a 的同时,main 函数中的实参b 的值也被修改成a 。
3. 若以下选项中的变量全部为整型变量,且已正确定义并赋值,则语法正确的switch 语句是( )。
【答案】D
【解析】A 项错误,case 后面的应该为整形或字符型常量;B 项错误,switch 后面的表达式需要在括号内;C 项错误,case 和后面的常量表达式应该由空格隔开。
4. 有以下程序:
第 3 页,共 45 页
程序运行的结果是( )。
A.1
B.2
C.3
D.4
【答案】B
【解析】本题主要考查函数的递归调用。fun 函数的功能是:当b 的值为零时,返回此时a 的值;否则,返 回即将a 和b 的值分别减1后返回fun 函数的本质是返回a-b 的值,因此最终的结果为2。
5. 以下程序中关于指针输入格式正确的是( )。 A. B. C. D.
【答案】C
【解析】A 项错误,指针p 未初始化,且scanf 中p 的格式不对;B 项,指针p 未初始化;C 项正确,首先 将k 的地址赋值给p ,然后通过p 从键盘输入数据给k 赋值;D 项错误,给指针p 的赋值错误。
6. 以下叙述中正确的是( )。
A. 结构体数组名不能作为实参传给函数
B. 结构体变量的地址不能作为实参传给函数
C. 结构体中可以含有指向本结构体的指针成员
D. 即使是同类型的结构体变量,也不能进行整体赋值
【答案】C
【解析】C 项正确,结构体中的成员可以是各种类型的指针变量。当一个结构体中有一个或多个成员的基类型就是本结构体类型时,通常把这种结构体称为可以“引用自身的结构体”。AB 两项错误,结构体的数组名和结构体变量的地址作为实参时,都是传引用形式调用函数;D 项错误,同类型的结构体变量之间可以直接赋值,
实际操作是内存空间拷贝。
7. 若有以下程序
第 4 页,共 45 页