[计算机类试卷]国家二级(C语言)笔试模拟试卷201及答案与解析.doc
《[计算机类试卷]国家二级(C语言)笔试模拟试卷201及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级(C语言)笔试模拟试卷201及答案与解析.doc(27页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级( C语言)笔试模拟试卷 201及答案与解析 1 下列关于栈和队列的描述中,正确的是 ( )。 ( A)栈是先进先出 ( B)队列是先进后出 ( C)队列允许在队头删除元素 ( D)栈在栈顶删除元素 2 已知二叉树后序遍历序列是 CDABE,中序遍历序列是 CADEB,它的前序遍历序列是 ( )。 ( A) ABCDE ( B) ECABD ( C) EACDB ( D) CDEAB 3 在数据流图中,带有箭头的线段表示的是 ( )。 ( A)控制流 ( B)数据流 ( C)模块调用 ( D)事件驱动 4 结构化程序设计的 3种结构是 ( )。 ( A)顺序结构,分支结构,跳转结构 (
2、 B)顺序结构,选择结构,循环结构 ( C)分支结构,选择结构,循环结构 ( D)分支结构,跳转结构,循环结构 5 下列方法中,不属于软件调试方法的是 ( )。 ( A)回溯法 ( B)强行排错法 ( C)集成测试法 ( D)原因排除法 6 下列选项中,不属于模块间耦合的是 ( )。 ( A)内容耦合 ( B)异构耦合 ( C)控制耦合 ( D)数据耦合 7 下列特征中不是面向对象方法 的主要特征的是 ( )。 ( A)多态性 ( B)标识惟一性 ( C)封装性 ( D)耦合性 8 在数据库设计中,将 E-R图转换成关系数据模型的过程属于 ( )。 ( A)需求分析阶段 ( B)概念设计阶段
3、( C)逻辑设计阶段 ( D)物理设计阶段 9 在一棵二叉树上,第 5层的结点数最多是 ( )。 ( A) 8 ( B) 9 ( C) 15 ( D) 16 10 下列有关数据库的描述,正确的是 ( )。 ( A)数据库设计是指设计数据库管理系统 ( B)数据库技术的根本目标是要解决数 据共享的问题 ( C)数据库是一个独立的系统,不需要操作系统的支持 ( D)数据库系统中,数据的物理结构必须与逻辑结构一致 11 C语言源程序名的后缀是 ( )。 ( A) exe ( B) C ( C) obj ( D) cp 12 若函数中有定义语句: int a;,则 ( )。 ( A)系统将自动给 a赋
4、初值 0 ( B)这时 a中的值是和随机数 ( C)系统将自动给 a赋初值 -1 ( D)这 a中无任何值 13 以下选项中,合法的一组 C语言数值常量是 ( )。 ( A) 028 5e-3 -0xf ( B) 12 OXa23 4 5e0 ( C) 177 4c1 5 Oabc ( D) Ox8A 10, 000 3 e5 14 下列语句组中,不正确的是 ( )。 ( A) char*s; s=“Olympic”; ( B) char s=“Olympic”; ( C) char*s; s=“Olympic”; ( D) char s=“Olympic”; 15 若在定义语句: int a
5、, b, C, *p=&c;之后,接着执行以下选项中的语句,则能正确执行的语句是 ( )。 ( A) scanf(“ d”, a, b, C; ( B) scallf(“ d d d”, a, b, C; ( C) scanf(“ d”, p); ( D) scanf(“ d”, &p); 16 有以下程序,其中 u表示按无符号整数输出 ( )。 main() unsigned int x=0xFFFF; *x的初值为十六进制数 * printf(“ u n”, X); 程序运行后的输出结果是 ( )。 ( A) -1 ( B) 65535 ( C) 32767 ( D) 0xFFFF 17
6、设变量 x和 Y均已正确定义并赋值,以下 if语句中,在编译时将产生错误信息的是 ( )。 ( A) if(x+); ( B) if(xy&y!=0); ( C) if(xy)x-else y+; ( D) if(y100)break; ( B) for(; ); ( C) int k=10000; dok+; while(k10000); ( D) int s=36; while(s)-s; 21 在 printf的格式字符中, e格式字符的作用是 ( )。 ( A) 以十六进制无符号形式输出整数 ( B)以带符号的十进制形式输出整数 ( C)以指数形式输出实数 ( D)以字符形式输出,且只
7、输出一个字符 22 以下选项中正确的语句组是 ( )。 ( A) char s; s=“HELLO!”; ( B) char*s; s=“HELLO!”); ( C) char s10; s=“HELLO!”; ( D) char*s; s=“HELLO!”; 23 字符串 “ ”ABCDEF “ ”的长度是 ( )。 ( A) 11 ( B) 10 ( C) 5 ( D) 3 24 下列说法正确的是 ( A) int(*def)10; -def指向一个指针,该指针指向 10个整型变量构成的数组 ( B) int*(*gh10); -gh指向一个指针,该指针指向 10个整型变量构成的数组 (
8、C) jnt*(*gh10); -gh是一个指针,指向由 10个指向整型变量的指针构成的数组 ( D) A, C均正确 25 若函数调用时的实参为变量,以下关于函数形参和实参的叙述中正确的是( )。 ( A)函数的实参和其对应的形参共占同一存储单元 ( B)形参只是形式上的 存在,不占用具体存储单元 ( C)同名的实参和形参占同一存储单元 ( D)函数的形参和实参分别占用不同的存储单元 26 设有如下定义: struct sk int m; float x; data,*q; 若要使 q指向 data中的 m域,正确的赋值语句是 ( )。 ( A) q=&data m; ( B) *q=dat
9、a m; ( C) q=(stmct sk*)&data m; ( D) q=(struct sk*)data m; 27 有以下程序: int fl(doub1e a) return a*a; intf2(int x, inty) double a, b; a=n(x); b=f1(y); return a+b: main() doublew; w=f2(2 1, 4 0); 程序执行后,变量 w的值是 ( )。 ( A) 20 21 ( B) 20 ( C) 20 0 ( D) 0 28 若语句 “t=fun(fun(x, y, a), (a+b, a+C, x+y+z); ”对 fun函
10、数的调用正确,则fun函数的形参个数为 ( )。 ( A) 3 ( B) 4 ( C) 5 ( D) 6 29 设 X为整型变量, n=14, n的地址为 4000; m=6, m的地址为 2000;执行语句x=&n后的结果为 ( )。 ( A) 14 ( B) 6 ( C) 2000 ( D) 4000 30 若有说明 int m34: 3, 9, 7, 8 5, (*q)4;和赋值语句 q=m;,则中0 struct tt int x; struct tt *y; *p; struct tt a4=120, a+1, 15, a+2, 30, a+3, 17, a; main() int
11、i; p=a; for(i=1; ix); p=P-y; 程序的运行结果是 ( )。 ( A) 20 30。 ( B) 30, 17 ( C) 15 30 ( D) 20, 15, 36 有以下程序: #include main() FILE*fp; int a10=1, 2, 3, 0, 0, i; fp=fopen(“d2 dat”,“wb”); fwrite(a, sizeof(int), 5, fp); fwrite(a, sizeof(int), 5, fp); fclose(fp); fp=fopen(“d2 dat”,“rb”); fread(a,sizeof(int), 1 0
12、, fp); fclose(fp); for(i=0; i void main() int f,f1, f2, i; f1=0; f2=1; printf(“ d d”, f1, f2); for(i: 3; i main() int x=1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,*p4, i; for(i=0; i void swap(int*a, int*b) int*t; t=a; a=b; b=t; main() int i=3,j=5, *p=&i, *q=&j; swap(p, q); printf(“ d d n”
13、, *p, *q); 51 以下程序的输出结果是 _。 #include int fun(intx) static int t=0; return(t+=x); main() int s, i; for(i=1; i0) str2*i=stri; str2*i-1=*; i-; printf(“ s n”, str); main() char str40; scanf(“ s n”, str); insert(str); 53 以下程序的功能是:通过函数 func输入字符并统计输入字符的个数。输入时用字符 作为输入结束标志。请填空。 #include long_; *函数说明语句 * main
14、() long n; n=func(); printf(“n= ldha”,n); longfunc() long m; for(m=0; getchar()!=; _); return m; 国家二级( C语言)笔试模拟试卷 201答案与解析 1 【正确答案】 D 【试题解析】 栈实际也是线性表,只不过是一种特殊的线性表。栈是只能在表的一端进行插入和删除运算的线性表,通常称插入、删除的这端为栈顶,另一端为栈底。队列是只允许在一端删除,在另一端插入的顺序表,允许删除的一端叫做队头,允许插入的一端叫做队尾。 2 【正确答案】 C 【试题解析】 由于后序遍历的最后一个元素为 E,所以 E为根结点,
15、所以它的前序遍历的首个元素为 E,故排除 A和 D选项。由于中序遍历中,元素 B在元素根结点 E的后面,所以 B为二叉树的右子树,并且该二叉树右子树只有一个元素,所以前序遍历的最后一个元素应为 B,故选项 C为正确选项,即该二叉树的前序遍历序列是 EACDB。 3 【正确答案】 B 【试题解析】 数据流图中带箭头的线段表示数据流,沿箭头方向传递数据的通道,一般在旁边标注数据流名。 4 【正确答案】 B 【试题解 析】 程序设计语言仅仅使用顺序、选择和重复 (循环 )三种基本控制结构就足以表达出各种其他形式结构的程序设计方法。遵循程序结构化的设计原则,按结构化程序设计方法设计出的程序易于理解、使
16、用和维护;可以提高编程工作的效率,降低软件的开发成本。 5 【正确答案】 C 【试题解析】 软件调试主要采用以下三种方法: 强行排错法:作为传统的调试方法,其过程可概括为设置断点、程序暂停、观察程序状态、继续运行程序。 回溯法:该方法适合于小规模程序的排错、即一旦发现了错误,先分析错误征兆,确定最先发现 “症状 ”的位置。 原因排除法:原因排除法是通过演绎和归纳,以及二分法来实现。 6 【正确答案】 B 【试题解析】 耦合可以分为下列几种,它们之间的耦合度由高到低排列: 内容耦合 若一个模块直接访问另一模块的内容,则这两个模块称为内容耦合。 公共耦合 若一组模块都访问同一全局数据结构,则称为公
17、共耦合。 外部耦合 若一组模块都访问同一全局数据项,则称为外部耦合。 控制耦合 若一模块明显地把开关量、名字等信息送入另模块,控制另一模块的功能,则称为控制耦合。 标记耦合 若两个以上的模块都需要其余某一数据结构的子结构时,不使用其余全局变量的方式而全使用记录传递的方式,这样的耦合称为标记耦合。 数据耦合 若一个模块访问另一个模块,被访问模块的输入和输出都是数据项参数,则这两个模块为数据耦合。 非直接耦合 若两个模块没有直接关系,它们之间的联系完全是通过程序的控制和调用来实现的,则称这两个模块为非直接耦合,这样的耦合独立性最强。 7 【正确答案】 D 【试题解析】 面向对象设计方法与面向过程设
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 语言 笔试 模拟 201 答案 解析 DOC
