2018年北京师范大学数学科学院805数据结构(C语言版)之C程序设计考研仿真模拟五套题
● 摘要
一、选择题
1. 若有说明
A. 编译后系统为W 分配5个字节
B. 编译后系统为W 分配6个字节
C. 编译后系统为W 分配58个字节
D. 编译后系统不为W 分配存储空间
【答案】D
【解析】结构体类型的说明只是列出了该结构的组成情况,标志着这种类型的结构“模式”已存在,编译程序并没有因此而分配任何存储空间。真正占有存储空间的仍应是具有相应结构体类型的变量、数组以及动态开辟的存储单元。
2. 有如下程序:
程序运行后的输出结果是( )。
A.4, 4, 4
B.1, 4, 8
C.0, 0, 0
D.1, 2, 4
【答案】A
【解析】sizeof 函数用来获取类型或数据对象的长度,也即是一个这种数据类型的变量在内存中所占字节数。 由于一个变量的地址也是一个值,因此就可以把这个地址值存放到另一个变量里保存。这种专门用来存放变量地 址的变量,称为“指针变量”。所有类型的指针变量都是地址,所占字节数均为4, 故A 项正确。
3. 设有以下定义:
第 2 页,共 44 页 则以下叙述中正确的是( )。
则以下叙述正确的是( )。
A. 数组s1的长度小于s2的长度
B. 数组s1和s2的长度相同
C. 数组s1的长度大于s2的长度
D. 数组s1和s2完全等价
【答案】C
【解析】为字符数组赋值字符串“0123”时,字符串中字符依次放人数组中后,在最后一个
数组s1长度为5。数组s2只需要4个单元即可放下所有初始字符后要添 加一个结束字符
化值,故数组长度为4。所以数组s1的长度大于S2的长度,C 项正确。两个数组等价是指两个数组长度和类型以及对应每个元素值均相 同,所以s1和82不是完全等价,D 项错误。
4. 有定义语句:若要从终端给s 输入5个字符,错误的输入语句是( )。 A. B. C. D.
【答案】D
【解析】采用
首地址。A 项,
的首地址;D 项
,
5. 若有以下程序:
以下叙述中正确的是( )。
A. 可用S 定义结构体变量
B. 可用T 定义结构体变量
C.S 是struct 类型的变量
D.T 是structS 类型的变量
【答案】B
【解析】S 为结构体类型名,而T 为结构体变量名表。
6. 有以下程序:
第 3 页,共 44 页 函数输入时,输入项为变量的地址。为数组的首地址;B 项,不是地址。【程序有错
,其中输入项为存放字符串的应
为最后一行应
为为数组中第二个元素的地址;C 项,s 也为数组
程序运行后的输出结果是( )。
A.AAAA
B.CC
C.BBBCC
D.BBBB
【答案】D
【解析】程序中声明一个3行4列的字符型数组。要求输出
故ch[l]为第二行的BBBB 。
7. 若有以下程序段
不能正确引用字符串的选项是( )。 A. B. C. D.
【答案】D
【解析】strp 是char *类型、长度为4的数组,4个指针分别指向字符串数组str 中的4个字符串。D 项错误,step 是char*的数组,不能引用字符串。A 项正确,引用strp 数组中第一个指针指向的内容,gpaa”; B 项正确,str 是字符串数组,引用数组中的”aa”; C 项正确,
于访问strp 中第四个指针指向的内容,即 ”d”。
8. 有以下程序:
程序运行后的输出结果是( )。
A.beijing B. china C. welcome D . tiananmen
【答案】C
【解析】strcmp 用于比较两字符串:当时,返回值当时,返回值=0; 当时,返回值>0。程序主要实现的是先对前两行进行比较,将码值大的调到后面,依次比较,即
即为 “weleome”。等价由于数组下标默认从0开始,“china”、“tiananmen”、“weleome”、“you”,最后的顺序为“beijing”、最后输出
第 4 页,共 44 页
相关内容
相关标签