2017年西北工业大学生命学院857生物医学工程综合考研题库
● 摘要
一、选择题
1. 有以下程序:
程序的运行结果是( )。
【答案】C
【解析】调用f 函数时,将结构体数组名作为实参传给了形参指针,使结构体指针a 指向了结构体C 的首地址。因此,在f 函数中,对指针所指结构体中的成员的赋值就是对数组c 中元素的赋值,故返回主函数之后,数组c
中
2. 若有定义:
A.ps[0]是字符串”aa” B. C. D.
是字符串”aa”的首地址 是字符串”aa”的首地址 是字符串”aa”
成员的值已被更新,
最终输出结果为
则以下叙述正确的是( )。
【答案】C
ps 是指针变量,ps[0]指向的是数组首个元素的地址,【解析】定义一个字符串数组指针ps 后,即字符串“aa” 的首地址,C 项正确。
3. 有以下程序:
程序运行后的输出结果是( )。
【答案】D
【解析】声明结构类型S 中有一个字符数组name , 在input , 为input 中成员name 初始化给name ,
由于
后,调用
函数
函数的形参为结构体指针,因此
函数中,定义了一个结构变量
执行功能是把
赋值
函数改变形参指针data 指向的
name 值的同时,也改变了实参input 的成员name 值;而形参value 为整型变量,是num 的一个副本,修改了nnm 的副本,对num 本身不产生影响,所以输出为#,3。
4. 有以下程序:
$
程序的运行结果是( )。 A.7, 6, 5 B.5, 5, 5 C.7, 5, 5 D.5, 6, 5 【答案】B
【解析】条件表达式的优先级高于赋值表达式,
中先执行
为否,则执行
和
运算,当以前缀形式出现时,则
将
先赋
先进行加一或减一操作,再取值,当以后缀形式出现时,则先取值,再进行加一或减一操作。
此时b 为5, 赋给i ,i 为5;
给j ,再进行
5. 有如下程序:
故最后输出的是5,5,5。
程序运行后的输出结果是( )。 A.A45D78 B.ABC678 C.34CD78 D.34AB78 【答案】A
【解析】本题执行过程为:
if 条件不成立执行else 函数体,i%3=l, if 输出字符A ; i=l,
条件成立输出字符4; i=2, i%3=2, if 条件成立输出字符5; i=3, if 条件不成立,输出字符D ; i=4和i=5时,分别输出字符7与8; i=6退出for 循环。所以程序运行后输出结果为A45D78, 故A 项正确。
6. 设有如下程序段:
以下叙述正确的是( )。 A. 只有a ,b ,c 的定义是合法的 B.a , b ,c ,d 的定义都是合法的 C. 只有a , b 的定义是合法的 D. 只有c 的定义是合法的 【答案】C
【解析】在对数组进行初始化时,如果对数组的全部元素赋以初值,定义时可以不指定数组长度,如果被定义数组的长度与初值个数不同,则数组长度不能省略;如果在说明数组时给出了长度,但没有给所有的元素赋予初始值,而只依次给前面的几个数组元素赋予初值,那么C 语言将自动对余下的元素赋初值。定义整型数组a ,长度为8, 并且其每个元素赋初值0, a 定义是合法的。定义整型数组b , 没有指定长度,但为1个元素赋值0,所以自动指定数组长度为1,b 定义是合法的。定义字符型数组c ,长度为2, 应对其元素赋值字符型常量,而“A ”与“B ”均为字符串,