[计算机类试卷]国家二级(C语言)笔试模拟试卷267及答案与解析.doc
《[计算机类试卷]国家二级(C语言)笔试模拟试卷267及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级(C语言)笔试模拟试卷267及答案与解析.doc(25页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级( C语言)笔试模拟试卷 267 及答案与解析 1 下列关于栈和队列的描述中,正确的是 ( )。 ( A)栈是先进先出 ( B)队列是先进后出 ( C)队列允许在队头删除元素 ( D)栈在栈顶删除元素 2 以下只有在使用时才为该类型变量分配内存的存储类型说明是 ( )。 ( A) auto和 static ( B) auto和 register ( C) register和 static ( D) extern和 register 3 设有下列二叉树: 对此二叉树后序遍历的结果为 ( A) ABCDEF ( B) BDAECF ( C) ABDCEF ( D) DBEFCA 4 在数据
2、库的两级映射中,从概念模式到内模式的映射一般由 _实现。 ( A)数据库系统 ( B)数据库管理系统 ( C)数据库管理员 ( D)数据库操作系统 5 下列选项中不属于算法的特性的是 ( A)确定性 ( B)可行性 ( C)有输出 ( D)无穷性 6 下列叙述中正确的是 _。 ( A)线性表是线性结构 ( B)栈与队列是非线性结构 ( C)线性链表是非线性结构 ( D)二叉树是线性结构 7 字长为 16位的计算机是指 _。 ( A)该计算机能够处理的最大数不超过 16 ( B)该计算机中的 CPU可以同时处理 16位的二进制信息 ( C)该计算机的内存量为 16MB ( D)该计算机每秒钟所能
3、执行的指令条数为 16MIPS 8 在面向对象的程序设计中,能表示类之间相似性质的机制是 ( )。 ( A)继承 ( B)封装 ( C)分类 ( D)动态连接 9 下列叙述中正确的是 ( )。 ( A)在模块化程序设计中,一个模块应尽量多的包括与其他模块联系的信息 ( B)在自顶向下、逐步细化的设计过程中,首 先应设计解决问题的每一个细节 ( C)在模块化程序设计中,一个模块内部的控制结构也要符合结构化原则 ( D)在程序设计过程中,不能同时采用结构化程序设计方法与模块化程序设计方法 10 下列不属于软件工程的 3个要素的是 ( )。 ( A)工具 ( B)过程 ( C)方法 ( D)环境 1
4、1 为了避免在嵌套的条件语句 ifelse中产生二义性, C语言规定, else子句总是与( )配对。 ( A)缩排位置相同 if ( B)其前面最近的 if ( C)其后面最近的 if ( D)同一行上的 if 12 以下叙述中正确的是 ( A)用 C程序实现的算法必须要有输入和输出操作 ( B)用 C程序实现的算法可以没有输出但必须要有输入 ( C)用 C程序实现的算法可以没有输入但必须要有输出 ( D)用 C程序实现的算法可以既没有输入也没有输出 13 下列关于软件测试的目的和准则的叙述中,正确的是 ( )。 ( A)软件测试是证明软件没有错误 ( B)主要目的是发现程序中的错误 ( C
5、)主要目的是确定程序中错误的位置 ( D)测试最好由程序员自己来检查自己的程序 14 下列程序的运 行结果是 #include “stdio.h“ main() int x=-9,y=5,z=8; if(x main( ) int C=O, k; for (k=1; k ( B) x=12,y=34,z=45 ( C) x=12C,sumy=34,z=45 ( D) x=12 ,sum y=34,line z=45 31 有如下程序: #define N2 #define MN+1 #define NUM2*M+1 main() int i; for(i=1; i =NUM; i+)print
6、f(“%dn“, i); 该程序中的 for循环执行的次数是 ( A) 5 ( B) 6 ( C) 7 ( D) 8 32 若有如下程序: sub(int * t, int n) int *p1, *p2; for(p1=t, p2 t; p1-t n; p1+) if(*p1 *p2) p2 p1; return(*p2); main() int a9 9, 36,19, 39, 26, 5, 6, 33, 15; printf(“%dn“, sub(a, 9); 则程序运行后的输出结果是 ( ) ( A) 5 ( B) 9 ( C) 15 ( D) 39 33 下列描述说明正确的是 ( )
7、 ( A)定义结构体时,它的每个成员的数据类型可以不同 ( B)不同结构体的成员名不能相同 ( C)结构体定义时,其成员的数据类型不能是结构体本身 ( D)结构体定义时各成员项之间可用分号也可用逗号隔开 34 下面函数的功能是 ( ) sss(s, t) char *s, *t; while(*s) ( D) putchar(ch); 36 以下程序的输出结果是 _。 main() int i,a10; for(i=9;i =0;i-)ai=10-i; printf(“%d%d%d“,a2a5,a8); ( A) 258 ( B) 741 ( C) 852 ( D) 369 37 定义 int
8、*swap()的是 _。 ( A)一个返回整型值的函数 swap() ( B)一个返回指向整型值指针的函数 swap() ( C)一个指向函数 swap()的指针,函数返回一个整型值 ( D)以上说法均错 38 若有以下定义: int a 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, * p a; 则值为 3的表达式是 ( ) ( A) p+ 2, * (pd+ +) ( B) p+ 2, * + +p ( C) p+ 3, * p+ + ( D) p + 2, + + * p 39 下列字符数组初始化语句中,不正确的是 ( )。 ( A) char c=goodmoming;
9、 ( B) char c20=“goodmorning“; ( C) char c=a, b, c, d; ( D) char c=“goodmoming“; 40 有以下程序 #include stdio.h void WriteStr(char*fn,char*str) FILE*fp; fp=fopen(fn“w“);fputs(str, fp); fclose(fp); main() WriteStr(“t1.dat“start“); WriteStr(“t1, dat“,“end“); 程序运行后 ,文件 t1.dat中的内容是 _。 ( A) start ( B) end ( C)
10、 startend ( D) endrt 41 以下选项中,当 x为大于 1的奇数时,值为 0的表达式是 ( A) x%2=1 ( B) x/2 ( C) x%2!=0 ( D) x%2=0 42 测试的目的是暴露错误,评价程序的可靠性;而【 】的目的是发现错误的位置并改正错误。 43 在面向对象方法中 ,属性与操作相似的一组对象称为【 】。 44 软件生命周期分为软件定义期、软件开发期和软件维护期,详细设计属于_中的一个阶段。 45 Jackson结构化程序设计方法是英国的 M.Jackson提出的,它是一种面向【 】的设计方法。 46 在算法正确的前提下,评价一个算法的两个标准是空间复杂度
11、和 ( )。 47 函数 fun的功能是计算 xn。 double fun(double x,int n) int i; double y=1; for(i=1;i =n;i+) y=y*x; return y; 主函数中已经正确定义变量 m, a, b并赋值,要调用函数 fun计算: m=a4+b4-(a+b)3。实现这一计算的函数调用语句为【 】。 48 若有定义 int m=5,y=2,则执行表达式 y+=y-=m*=y后, y的值为【 】。 49 已有定义如下: struct node int data; struct node *next; *p; 以下语句调用 malloc函数,使
12、指针 p指向一个具有 struct node类型的动态存储空间。请填空。 p=(struct node *)malloc(【 】 ); 50 若有以下程序: main() int a=4, b=3, c=5, t=0; if(a b) t=a; a=b; b=t; if(a c) t=a; a=c; c=t; printf(“%d%d%dn“,a,b,C); 执行后输出结果是【 】。 51 设有如下变量说明,则 a+(int)(int)b+c) (int)(b-c)的值为【 】。 int a=5;float b=7.2,c=3.6; 52 已知字符 A的 ASCII代码值为 65,以下程序运行
13、时若从键盘输入: B33回车,则输出结果是 【 】。 #include stdio h main() char a, b; a=getchar(); scanf(“%d“,b=b*2; printf(“%c%cn“,a,b); 53 下列程序的功能是将字符串 s中所有的字符 c删除。请填空。 #include stdio.h main() char s80; int i,j; gets(s); for(i=j=0;si !=0;i+) if(si!=c)_; sj=O; puts(s); 54 下列程序的输出结果是 _。 main() int a= 31,27,20,12,6,1,*p=a;
14、p+; printf(“%dn“,*(p+2); 55 有以下定义和语句,则 sizeof(a)的值是 【 】 ,而 sizeof(a.share)的值是 【 】 。 struct date int day; int mouth; int year; union int share1; float share2; share; a; 56 下面函数要求计算两个整数 x, y之和,并通过形参返回该值,请填空。 add(int x, int y,【 】 z) 【 】 =x+y; 国家二级( C语言)笔试模拟试卷 267 答案与解析 1 【正确答案】 D 【试题解析】 栈实际也是线性表,只不过是一种
15、特殊的线性表。栈是只能在表的一端进行插入和删除运算的线性表,通常称插入、删除的这端为栈顶,另一端为栈底。队列是只允许在一端删除, 在另一端插入的顺序表,允许删除的一端叫做队头,允许插入的一端叫做队尾。 2 【正确答案】 B 【试题解析】 在用静态 static与外部 extern 定义变量时,系统立刻给其分配内存,而定义自动类 auto与强制放入寄存器 register类型变量时,只有当使用时才分配内存。 3 【正确答案】 D 【试题解析】 二叉树的遍历分为先序、中序、后序三种不同方式本题要求后序遍历,其遍历顺序应该为:后序遍历左子树 -后序遍历右子树 -访问根结点。按照定义,后序遍历序列是
16、DBEPCA,故答案为 D。 4 【正确答案】 B 【试题解析】 从概念模式到内模式的映射一般数据库管理系统 (DBMS)实现。 5 【正确答案】 D 【试题解析】 一个算法必须具有五个特性,即有穷性、确定性、可行性,有输入、有输出其中有穷性是指算法必须总是在执行完有穷步之后结束,而且每步都在有穷时间内完成。 D选项不是算法的特性。 6 【正确答案】 A 【试题解析】 一般将数据结构分为两大类型:线性结构与非线形结构。线性表、栈与队列、线性链表都是线性结构,而二叉树是非线性结构。 7 【正确答案】 B 【试题解析】 字长是指 CPU可以同时处理二进制的位数,是由 CPU的型号和类型决定的。 8
17、 【正确答案】 A 【试题解析】 在面向对象的程序设计中,继承是表示类之间相似性的机制。 9 【正确答案】 C 【试题解析】 模块化设计要求分解大程序,使每个模块都能易于理解,各模块的功能尽量单一,各模块之间的联系尽量少,选项 A错误:在自顶向下、逐步细化的设计过程中,是按照先全局后局部、先整体后细节、先抽象后具体的方法设计程序,选项 B 错误;在模块化程序设计中,一个模块内部的控制结构也要符合结构化原则, 所以,在程序设计过程中,结构化程序设计方法与模块化程序设计方法是要同时采用的,选项 D错误。 10 【正确答案】 D 【试题解析】 软件工程包括 3个要素,即方法、工具和过程。方法是完成软
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 语言 笔试 模拟 267 答案 解析 DOC
