首页 > 全部 > 二级C语言 > 国家二级C语言机试(选择题)模拟试卷312

国家二级C语言机试(选择题)模拟试卷312

本单篇文档共11835字,内容预览3600字,预览为有答案版,源文件无水印,下载后包含无答案空白卷版和有答案版,同时也有计算机类NCRE全国计算机二级整科真题模拟题,讲义课件,思维导图,易错高频题等下载。
二级C语言 章节练习 3619人下载
价格: 0.60 原价:¥9.60
收藏

国家二级C语言机试(选择题)模拟试卷312

选择题

1.下列叙述中正确的是( )。(B)

A. 能采用顺序存储的必定是线性结构

B. 所有的线性结构都可以采用顺序存储结构

C. 具有两个以上指针的链表必定是非线性结构

D. 循环队列是队列的链式存储结构

解析:所有的线性结构都可以用数组保存,即都可以采用顺序存储结构。而反过来不可以,完全二叉树也能用数组保存(按层次依次存放到数据元素中),但完全二叉树属于非线性结构。双向链表具有两个以上的指针,但属于线性结构。循环队列是队列的顺序存储结构。

2.一个栈的初始状态为空。现将元素1、2、3、4、5、A、B、C、D、E依次入栈,然后再依次出栈,则元素出栈的顺序是(B)

A. 12345ABCDE

B. EDCBA54321

C. ABCDE12345

D. 54321EDCBA

解析:栈是按照“先进后出”或“后进先出”的原则组织数据的。所以出栈顺序是EDCBA54321。

3.下列各项中,对对象概念描述正确的是( )。(A)

A. 对象间的通信靠消息传递

B. 对象是名字和方法的封装体

C. 任何对象必须有继承性

D. 对象的多态性是指一个对象有多个操作

解析:对象之间进行通信的构造叫作消息,选项A正确。封装性是指从外面看只能看到对象的外部特征,而不知道也无须知道数据的具体结构以及实现操作,选项B错误。对象不一定必须有继承性,选项C错误。多态性是指同一个操作可以是不同对象的行为,选项D错误。

4.下列关于二叉树的叙述中,正确的是(B)

A. 叶子结点总是比度为2的结点少一个

B. 叶子结点总是比度为2的结点多一个

C. 叶子结点数是度为2的结点数的两倍

D. 度为2的结点数是度为1的结点数的两倍

解析:由二叉树的性质可以知道在二叉树中叶子结点总是比度为2的结点多一个。

5.以下定义语句中正确的是(A)

A. charA=65+1,b=’b’;

B. inta=b=0;

C. floata=1,*b&a,*c=&b;

D. doublea=0.0;b=1.1;

解析:本题考查的是数据类型的定义并赋值,选项B中对变量声明类型且赋值的情况是不允许出现的,必须单独定义且赋值。选项C中对于指针变量c的赋值须为同型指针,而&b为二级指针。选项D中C语言允许在一个类型说明符后说明多个相同类型的变量,各变量之间要用逗号( )隔开,而不是用分号(;)隔开;在计算机存储字符时将字符相应的AscⅡ码以其对应的二进制进行存放,选项A中的定义是合法的。

6.下列选项中属于面向对象设计方法主要特征的是(A)

A. 继承

B. 自顶向下

C. 模块化

D. 逐步求精

解析:面向对象设计方法的主要特征有封装性、继承性和多态性。而结构化程序设计方法的主要原则有自顶向下,逐步求精,模块化,限制使用goto语句。

7.有以下程序

#include

main() {

int a=3;

printf(\\(D)

A. 9

B. 0

C. 3

D. -12

解析:对于表达式a+=a-=a*a梢当于a=a-(a*a),然后计算a=a+a,a的初值为3,则表达式的值为-12。

8.耦合性和内聚性是对模块独立性度量的两个标准。下列叙述中正确的是(B)

A. 提高耦合性降低内聚性有利于提高模块的独立性

B. 降低耦合性提高内聚性有利于提高模块的独立性

C. 耦合性是指一个模块内部各个元素间彼此结合的紧密程度

D. 内聚性是指模块间互相连接的紧密程度

解析:耦合性是反映模块间互相连接的紧密程度,内聚性是指一个模块内部各个元素间彼此接合的紧密程序。提高模块的内聚性,降低模块的耦合性是有利于模块的独立性。

9.两个或两个以下模块之间关联的紧密程度称为(A)

A. 耦合度

B. 内聚度

C. 复杂度

D. 数据传输特性

解析:模块的独立性是指每个模块只完成系统要求的独立的子功能,并且与其他模块的联系较少且接口简单。衡量软件的模块独立性使用:内聚性和耦合性两个定性度量标准。内聚性是对一个模块内部各个元素彼此结合的紧密程度的度量;耦合性是对模块间互相连接的紧密程度的度量。一般较优秀的软件设计,应尽量做到高内聚、低耦合,即减弱模块之间的耦合性和提高模块内的内聚性,有利于提高模块的独立性。

10.若在定义语句: int a,b,C,*p=&c;接着执行以下选项中的语句,则能正确执行的语句是(C)

A. scanf(\\

B. scanf(\\

C. scanf(\\

D. scanf(\\

解析:程序语句int a,b,c,*p=&c;定义了三个整型变量a,b,c,和一个整型指针变量p,并且把变量c的地址赋给p。scanf函数的一般形式为“scanf(“格式控制字符串”,地址列表)”,其中的地址列表应当是存放输入数据变量的地址。

11.以下程序段的输出结果是( )。

#include<stdio.h>

main()

{ char p[][4]={’’ABC’’,’’DEF’’,’’GHI’’};

int i;

for(i=0;i<3;i++)

puts(p[i]);

}(C)

A. A

B

C

B. A D G

C. A B C

D E F

G H I

D. A B C

解析:本题首先定义了一个字符串数组p,通过for循环输出p[0]、p[1]p[2]的值。

12.关于C程序的编译和运行,以下叙述中错误的是( )。(C)

A. C语言源代码程序通过编译、链接步骤之后才能形成一个可执行文件

B. 用C语言编写的程序是以ASCⅡ代码形式存放在一个文本文件中

C. C语言中的所有语句都将被转换成二进制的机器指令

D. C语言源程序经编译后生成后缀为.obj的目标程序

解析:C语言中的某些语句并不会被转换成二进制机器指令,如宏定义命令,在预编译之后替换到代码中,该命令本身也就不存在了,不会转换成二进制的机器指令。C语言编写的源程序就是以ASCⅡ的形式存放在文本文件中的。C源程序经过C编译程序编译之后生成一个后缀为.obj的二进制文件(称为目标文件),然后由称为“链接程序”的软件,因此.obj文件与C语言提供的各种库函数链接起来生成一个后缀为.EXE的可执行文件。

13.以下叙述中正确的是( )。(D)

A. 语句p=NULL;执行后,指针P指向地址为0的存储单元

B. 指针变量只能通过求地址运算符&来获得地址值

C. 语句p=NULL;与p=\0;是等价的语句

D. int*p1;、int * *p2;、int*p3;都是合法的定义指针变量的语句

解析:考查指针变量。指针变量的定义形式为:类型名 *指针变量名,表示指向某一个变量的指针,如果定义形式为:类型名**指针变量名,则表示指向某一个指针变量的指针,所以D选项正确。指针变量本身存储的是其指向的变量的地址值,不需

本文档预览:3600字符,共11835字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载

剩余未完,查看全文
收藏
国家二级C语言机试(选择题)模拟试卷312

推荐资源

客服

扫码添加客服微信

热线

官方客服

如遇问题,请联系客服为您解决

电话客服:

客服微信:pujinet

工作时间:9:00-18:00,节假日休息

公众号

扫码关注微信公众号