【计算机类职业资格】国家二级(C语言)机试模拟试卷120及答案解析.doc
《【计算机类职业资格】国家二级(C语言)机试模拟试卷120及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】国家二级(C语言)机试模拟试卷120及答案解析.doc(13页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级(C 语言)机试模拟试卷 120 及答案解析(总分:86.00,做题时间:90 分钟)一、选择题(总题数:40,分数:80.00)1.下列关于栈和队列的描述中,正确的是( )。(分数:2.00)A.栈是先进先出B.队列是先进后出C.队列允许在队头删除元素D.栈在栈顶删除元素2.已知二叉树后序遍历序列是 CDABE,中序遍历序列是 CADEB,它的前序遍历序列是( )。(分数:2.00)A.ABCDEB.ECABDC.EACDBD.CDEAB3.在数据流图中,带有箭头的线段表示的是( )。(分数:2.00)A.控制流B.数据流C.模块调用D.事件驱动4.结构化程序设计的 3 种结构是(
2、)。(分数:2.00)A.顺序结构,分支结构,跳转结构B.顺序结构,选择结构,循环结构C.分支结构,选择结构,循环结构D.分支结构,跳转结构,循环结构5.下列方法中,不属于软件调试方法的是( )。(分数:2.00)A.回溯法B.强行排错法C.集成测试法D.原因排除法6.下列选项中,不属于模块间耦合的是( )。(分数:2.00)A.内容耦合B.异构耦合C.控制耦合D.数据耦合7.下列特征中不是面向对象方法的主要特征的是( )。(分数:2.00)A.多态性B.标识惟一性C.封装性D.耦合性8.在数据库设计中,将 ER 图转换成关系数据模型的过程属于( )。(分数:2.00)A.需求分析阶段B.概念
3、设计阶段C.逻辑设计阶段D.物理设计阶段9.在一棵二叉树上,第 5 层的结点数最多是( )。(分数:2.00)A.8B.9C.15D.1610.下列有关数据库的描述,正确的是( )。(分数:2.00)A.数据库设计是指设计数据库管理系统B.数据库技术的根本目标是要解决数据共享的问题C.数据库是一个独立的系统,不需要操作系统的支持D.数据库系统中,数据的物理结构必须与逻辑结构一致11.以下关于 C 语言的叙述中正确的是( )。(分数:2.00)A.预处理命令通常位于函数体外面,但也可以位于函数体中间B.C 语言中的变量定义须在其他语句之前C.在 C 语言程序的书写中,一个语句必须单占一行D.个
4、C 语言源程序可以由一个或多个源文件组成,每个源文件可由自己的 ma1n 函数12.下列叙述中错误的是( )。(分数:2.00)A.用户所定义的标识符允许使用关键字B.用户所定义的标识符应尽量做到“见名知意”C.用户所定义的标识符必须以字母或下划线开头D.用户定义的标识符中,大、小写字母代表不同标识13.下列选项中可作为 C 语言合法常量的是( )。(分数:2.00)A.80B.080C.8e10D.800e14.下列定义变量的语句中错误的是( )。(分数:2.00)A.int _int;B.doubleint_;C.char For;D.floatU15.下列关于函数的叙述中正确的是( )。
5、(分数:2.00)A.每个函数都可以被其他函数调用(包括 ma1n 函数)B.每个函数都可以被单独编译C.每个函数都可以单独运行D.在一个函数内部可以定义另一个函数16.当 a=1、 b=2、 c=3、d=4 时,执行下面程序段后,x 的值是( )。 if(aA.1B.6C.3D.217.以下程序的输出结果是( )。 #inc1ude main() int a=4,b=3,c=2,d=1; printf(“d“,ab?a:dA.1B.3C.2D.418.有以下程序 #inc1ude main() int b33=0,1,2,0,1,2,0,1,2,i,j,t=0; for(i=0;i=i;j
6、)=biD; printf(“d/n“,t); 程序运行后的输出结果是( )。(分数:2.00)A.4B.3C.8D.919.以下程序: #inc1ude main() char str10; scanf(“s“,&str); printf(“s/n“,str); 运行上面的程序,输入字符串“how are you”,则程序的执行结果是( )。(分数:2.00)A.howB.how are youC.hD.howareyou20.设变量 x 和变量 y 都是 int 类型,且 x=1,y=2,则 printI!(“ddt“,x,y,(x,y)的输出结果是( )。(分数:2.00)A.12B.1
7、22C.1,2D.输出值不确定21.以下程序的输出结果是( )。 #inc1ude main() int a=8,b=6,m=1; switch(a4) case 0:m+; break; case 1:m+: switch(b3) default: m+; case 0:mH; break; printf(“d/n“,m);(分数:2.00)A.1B.2C.3D.422.定义如下变量和数组: int i,X33=1,2,3,4,5,6,7,8,9; 则下面语句的输出结果是( )。for(i=0;i3;i+)printf(“d“,xi2i);(分数:2.00)A.159B.147C.357D.
8、36923.有下列程序段: typedef struct NODE int num; struct NODE *next; OLD; 下列叙述中正确的是( )。(分数:2.00)A.以上的说明形式非法B.NODE 是一个结构体类型C.OLD 是一个结构体类型D.OLD 是一个结构体变量24.下列数组定义中错误的是( )。(分数:2.00)A.int x3=0);B.int x23=1,2,3,4,5,6;C.int x31,2,3),4,5,6;D.int x231,2,3,4,5,6);25.以下叙述错误的是( )。(分数:2.00)A.变量的作用域取决于变量定义语句的位置B.全局变量可以在
9、函数以外的任何部位进行定义C.局部变量的作用域可用于其他函数的调用D.个变量说明为 static 存储类型是为了限制其他编译单元的引用26.若定义函数“int *func0”,则函数 func 的返回值为( )。(分数:2.00)A.个实数B.一个指向整型变量的指针C.一个指向整型函数的指针D.个整型函数的入口地址27.若有定义“int a5,*p=a;”则正确引用数组元素的是( )。(分数:2.00)A.*a5B.*a+2C.*(p+5)D.*(a+2)28.以下对 C 语言中联合类型数据的正确叙述是( )。(分数:2.00)A.定义了联合变量后,即可引用该变量或该变量中的任意成员B.个联合
10、变量中可以同时存放其所有成员C.联合中的各个成员使用共同的存储区域D.在向联合中的一个成员进行赋值时,联合中其他成员的值不会改变29.有以下函数定义: int fun(double a,double b) return a*b; 若以下选项中所用变量都己正确定义并赋值,错误的函数调用是( )。(分数:2.00)A.if(fun(x,y)B.z= fun (fun (x,y),fun(x,y);C.z= fun (fun(x,y)x,y);D.fun(x,y);30.执行以下语句段后,xy 的值是( )。 int*pt,xy; xy=200; pt=&xy; xy=*pt+30;(分数:2.00
11、)A.200B.170C.260D.23031.下述程序的输出结果是( )。 #inc1ude void main() int a20,*p4; int i,k=0; for(i=0;iA.10B.18C.6D.数组元素引用不合法,输出结果不定32.有以下程序: #inc1ude #defineN 8 void fun(int *x,int i) *x=*(x+i)+1; main() int aN=1,2,3,4,5,6,7,8),i; fun(a,2); for(i=0;iA.1313B.3234C.4234D.12 3 433.下面程序的输出结果是( )。 #inc1ude main()
12、 char a=a,b,c,d,f,g),*p; p=a; printf(“cn“,*p+4); (分数:2.00)A.aB.bC.eD.f34.下面函数的功能是( )。 sss(s,t) char*s,*t; while(*s); while(*t) *(s+)=*(t+); retum s; (分数:2.00)A.将字符串 s 复制到字符串 t 中B.比较两个字符串的大小C.求字符串的长度D.将字符串 t 续接到字符串 s 中35.下列程序的运行结果是( )。 #inc1ude void sub(int*s,int*y) static int m=4; *y:sm; m ; void ma
13、in() int a=1,2,3,4,5,k,x; printf(“n“); for(k=0;k=4;kH) sub(a,&x); printf(“d,“,x); (分数:2.00)A.5,4,3,2,1,B.1,2,3,4,5,C.0,0,0,0,0,D.4,4,4,4,4,36.设 q1 和 q2 是指向一个 int 型一维数组的指针变量,k 为 float 型变量,下列不能正确执行的语句是( )。(分数:2.00)A.k=q1*(*q2);B.q1=k;C.q1=q2;D.k=*q1+*q2;37.下列程序的输出结果为( )。 main() union un char *name; in
14、t age; int pay; s; sname=“zhaoming“; sage=32; spay=3000; printf(“d/n“,sage); (分数:2.00)A.32B.3000C.0D.不确定38.以下有关宏替换的叙述不正确的是( )。(分数:2.00)A.使用宏定义可以嵌套B.宏定义语句不进行语法检查C.双引号中出现的宏名不替换D.宏名必须用大写字母表示39.有以下程序: #inc1ude int b=3: int fun(int *k) b=*k+b;return(b); main() int a10=1,2,3,4,5,6,7,8,i; for(i=2;iA.12 14B
15、.12 32C.10 14D.10 2040.已知函数的调用形式“fread(buffer,size,count,fp);”其中 buffer 代表的是( )。(分数:2.00)A.一个整型变量,代表要读入的数据项总数B.个文件指针,指向要读的文件C.个指针,是指向的输入数据放在内存中的起始位置D.一个存储区,存放要读的数据项二、程序填空题(总题数:1,分数:2.00)41.给定程序中,函数 fun 的功能是:在形参 ss 所指字符串数组中,删除所有串长超过 k 的字符串,函数返回所剩字符串的个数。ss 所指字符串数组中共有 N 个字符串,且串长小于 M。 请在程序的下划线处填入正确的内容并把
16、下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1C 中。 不得增行或删行,也不得更改程序的结构! #include #include #define N 5 #define M 10 int fun (char (*ss) Ml,int k) int i,j=0,len; len=strlen (ss i ) ; if (len= 2 ) strcpy (ssj+,_3_) ; ) return j; main () char x N M= “Beij ing“,“ Shanghai“, “Tianjing“,“Nanjing“,“Wuhan“ ; int if
17、 f; printf(“/nThe original string/n/n“) ; for (i=0;i国家二级(C 语言)机试模拟试卷 120 答案解析(总分:86.00,做题时间:90 分钟)一、选择题(总题数:40,分数:80.00)1.下列关于栈和队列的描述中,正确的是( )。(分数:2.00)A.栈是先进先出B.队列是先进后出C.队列允许在队头删除元素D.栈在栈顶删除元素 解析:解析:栈实际也是线性表,只不过是一种特殊的线性表。栈是只能在表的一端进行插入和删除运算的线性表,通常称插入、删除的这一端为栈顶,另一端为栈底。队列是只允许在一端删除,在另一端插入的顺序表,允许删除的一端叫做队
18、头,允许插入的一端叫做队尾。2.已知二叉树后序遍历序列是 CDABE,中序遍历序列是 CADEB,它的前序遍历序列是( )。(分数:2.00)A.ABCDEB.ECABDC.EACDB D.CDEAB解析:解析:由于后序遍历的最后一个元素为 E,所以 E 为根结点,所以它的前序遍历的首个元素为 E,故排除 A)和 D)选项。由于中序遍历中,元素 B 在元素根结点 E 的后面,所以 B 为二叉树的右子树,并且该二叉树右子树只有一个元素,所以前序遍历的最后一个元素应为 B,故选项 C)为正确选项,即该二叉树的前序遍历序列是 EACDB。3.在数据流图中,带有箭头的线段表示的是( )。(分数:2.0
19、0)A.控制流B.数据流 C.模块调用D.事件驱动解析:解析:数据流图中带箭头的线段表示数据流,沿箭头方向传递数据的通道,一般在旁边标注数据流名。4.结构化程序设计的 3 种结构是( )。(分数:2.00)A.顺序结构,分支结构,跳转结构B.顺序结构,选择结构,循环结构 C.分支结构,选择结构,循环结构D.分支结构,跳转结构,循环结构解析:解析:程序设计语言仅仅使用顺序、选择和重复(循环)三种基本控制结构就足以表达出各种其他形式结构的程序设计方法。遵循程序结构化的设计原则,按结构化程序设计方法设计出的程序易于理解、使用和维护;可以提高编程工作的效率,降低软件的开发成本。5.下列方法中,不属于软
20、件调试方法的是( )。(分数:2.00)A.回溯法B.强行排错法C.集成测试法 D.原因排除法解析:解析:软件调试主要采用以下三种方法: 强行排错法:作为传统的调试方法,其过程可概括为设置断点、程序暂停、观察程序状态、继续运行程序。 回溯法:该方法适合于小规模程序的排错、即一旦发现了错误,先分析错误征兆,确定最先发现“症状”的位置。 原因排除法:原因排除法是通过演绎和归纳,以及二分法来实现。6.下列选项中,不属于模块间耦合的是( )。(分数:2.00)A.内容耦合B.异构耦合 C.控制耦合D.数据耦合解析:解析:耦合可以分为下列几种,它们之间的耦合度由高到低排列: 内容耦合一一若一个模块直接访
21、问另一模块的内容,则这两个模块称为内容耦合。 公共耦合一一若一组模块都访问同一全局数据结构,则称为公共耦合。 外部耦合一一若一组模块都访问同一全局数据项,则称为外部耦合。 控制耦合一一若一模块明显地把开关量、名字等信息送入另一模块,控制另一模块的功能,则称为控制耦合。 标记耦合一一若两个以上的模块都需要其余某一数据结构的子结构时,不使用其余全局变量的方式而全使用记录传递的方式,这样的耦合称为标记耦合。 数据耦合一一若一个模块访问另一个模块,被访问模块的输入和输出都是数据项参数,则这两个模块为数据耦合。 非直接耦合一一若两个模块没有直接关系,它们之间的联系完全是通过程序的控制和调用来实现的,则称
22、这两个模块为非直接耦合,这样的耦合独立性最强。7.下列特征中不是面向对象方法的主要特征的是( )。(分数:2.00)A.多态性B.标识惟一性C.封装性D.耦合性 解析:解析:面向对象设计方法与面向过程设计方法有本质的不同,其基本原理是:使用现实世界的概念抽象地思考问题从而自然地解决问题。其特点包括:标识惟一性、多态性、封装性、模块独立性、继承和多态性好。8.在数据库设计中,将 ER 图转换成关系数据模型的过程属于( )。(分数:2.00)A.需求分析阶段B.概念设计阶段C.逻辑设计阶段 D.物理设计阶段解析:解析:逻辑结构设计的任务:概念结构是各种数据模型的共同基础,为了能够用某 DBMS 实
23、现用户需求,还必须将概念结构进一步转化为相应的数据模型,这正是数据库逻辑结构设计所要完成的任务。它包括从 ER 图向关系模式转换和逻辑模式规范化及调整、实现。9.在一棵二叉树上,第 5 层的结点数最多是( )。(分数:2.00)A.8B.9C.15D.16 解析:解析:根据二叉树的性质:二叉树第 i(i1)层上至多有 2 i1 个结点。得到第 5 层的结点数最多是 16 个。10.下列有关数据库的描述,正确的是( )。(分数:2.00)A.数据库设计是指设计数据库管理系统B.数据库技术的根本目标是要解决数据共享的问题 C.数据库是一个独立的系统,不需要操作系统的支持D.数据库系统中,数据的物理
24、结构必须与逻辑结构一致解析:解析:数据库设计的目的实质上是设计出满足实际应用需求的实际关系模型。数据库技术的主要目的是有效地管理和存取大量的数据资源,包括:提高数据的共享性,使多个用户能够同时访问数据库中的数据;减小数据的冗余,以提高数据的一致性和完整性;提供数据与应用程序的独立性,从而减少应用程序的开发和维护代价。11.以下关于 C 语言的叙述中正确的是( )。(分数:2.00)A.预处理命令通常位于函数体外面,但也可以位于函数体中间 B.C 语言中的变量定义须在其他语句之前C.在 C 语言程序的书写中,一个语句必须单占一行D.个 C 语言源程序可以由一个或多个源文件组成,每个源文件可由自己
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 国家 二级 语言 模拟 试卷 120 答案 解析 DOC
