2018年北京联合大学教育智能化技术801计算机综合之C程序设计考研核心题库
● 摘要
一、选择题
1. 设有以下程序段:
要引用结构体变量Std 中的color 成员,下列写法中错误的是( )。
【答案】C
【解析】在使用结构体变量引用结构体中的成员变量时,
可以使用指针引用结构体中的成员变量是,
可以使用
2. 有以下程序:
程序运行后的输出结果是( ) A.1,2,1,2 B.1,2,2,1 C.2,1,2,1 D.2,1,1,2 【答案】B
【解析】本题首先让指针变量p 和q 分别指向m 和n 的地址空间,然后将p 赋值给r ,让r 指向m ,q 赋值给p ,让p 指向n ,再将r 赋值给q ,让q 指向m ,因此最后p 指向n ,q 指向m 。
3. 有以下程序:
第 2 页,共 63 页
来引用,使用结构体
来指向结构体中的成员。
程序的运行结果是( )。 A.grameamee B.g a e C.programe D. 无输出字符 【答案】A
【解析】定义两个指针变量p1、p2, 分别指向数组Sl 、S2首地址,在for 循环中,比较两个指针对应地址 的元素是否相等,如果相等,则输出当前指针指向地址的字符串,故答案为A 选项。
4. if 语句的基本形式是:if (表达式)语句,以下关于“表达式”值的叙述中正确的是( )。
A. 必须是逻辑值 B. 必须是整数值 C. 必须是正数
D. 可以是任意合法的数值 【答案】D
【解析】if 是C 语言的关键字,在其后一对圆括号中的表达式可以是c 语言中任意合法的表达式。
5. 下面选项中关于位运算的叙述正确的是( )。
A. 位运算符都需要两个操作数
B. 位运算的对象只能是整型或字符型数据 C. 左移运算的结果总是原操作数据2倍 D. 右移fe 算时,尚位总是补0 【答案】B
【解析】B 项正确,C 语言中,位运算的对象只能是整型或字符型数据,不能是其他类型的数据。A 项错误,位运算符中取反操作符只需要一个操作符;C 项错误,左移时,若左端移出的部分不包含有效二进制数1, 则每左移一位,相当于移位对象乘以2, 如果端移出的部分包含有效二进制数1,结论不成立;D 项错误,右移运算时,对于无符号整数和正整数,高位补0; 对于负整数,高位补1。
第 3 页,共 63 页
6. 以下是if 语句的基本形式:
if (表达式)语句
其中“表达式”( )。 A. 必须是逻辑表达式 B. 必须是关系表达式
C. 必须是逻辑表达式或关系表达式 D. 可以是任意合法的表达式 【答案】D
【解析】表达式一般是关系表达式或逻辑表达式,用于描述选择结构的条件,但也可以是其他类型表达式,只要其合法,在其值非零时都视为真,所以其他表达式也可以作为if 语句的判断条件。
7. 有以下程序:
程序的运行结果是( )。 A.5 B.2 C.6 D.3
【答案】A
【解析】malloc (size )函数的返回值是新分配的存储区的首地址,将该地址赋值给p 指针,然后取p 指针 的地址,调用fun 函数。fun 函数中对指向指针的指针s 指向的内存单元赋值,其中
表示二维数组x 的第二行的行地址
,与
8. 以下叙述错误的是( )。
A. 在进行模块化程序设计的时候,应首先完成每个模块的编写调试,再集中考虑主程序中的算法
B. 同一程序各模块可由不同人员同时进行编写调试,可提高编写程序的效率
第 4 页,共 63 页
表示二维数组X 的第二行第二列的地址,所以
赋值给
为p ,所以
代表
fun 函数的功能是将二维数组X 的第二行第二列的值,即
等价,A 项正确。
相关内容
相关标签