[计算机类试卷]国家二级(C语言)笔试模拟试卷34及答案与解析.doc

上传人:dealItalian200 文档编号:503453 上传时间:2018-11-29 格式:DOC 页数:17 大小:49KB
下载 相关 举报
[计算机类试卷]国家二级(C语言)笔试模拟试卷34及答案与解析.doc_第1页
第1页 / 共17页
[计算机类试卷]国家二级(C语言)笔试模拟试卷34及答案与解析.doc_第2页
第2页 / 共17页
[计算机类试卷]国家二级(C语言)笔试模拟试卷34及答案与解析.doc_第3页
第3页 / 共17页
[计算机类试卷]国家二级(C语言)笔试模拟试卷34及答案与解析.doc_第4页
第4页 / 共17页
[计算机类试卷]国家二级(C语言)笔试模拟试卷34及答案与解析.doc_第5页
第5页 / 共17页
点击查看更多>>
资源描述

1、国家二级( C语言)笔试模拟试卷 34及答案与解析 1 在数据结构中,从逻辑上可以把数据结构分为 _。 ( A)动态结构和静态结构 ( B)紧凑结构和非紧凑结构 ( C)线性结构和非线性结构 ( D)内部结构和外部结构 2 若进栈序列为 1, 2, 3, 4,进栈过程中可以出栈,则下列不可能的一个出栈序列是 _。 ( A) 1, 4, 3, 2 ( B) 2, 3, 4, 1 ( C) 3, 1, 4, 2 ( D) 3, 4, 2, 1 3 排序方法中,将整个无序序列分割成若干小的子序列并分别进行插入排序的方法,称 _。 ( A)希尔排序 ( B)冒泡排序 ( C)插入排序 ( D)选择排序

2、 4 在顺序表 (3, 6, 8, 10, 12, 15, 16, 18, 21, 25, 30)中,用二分法查找关键码值 11,所需的关键码比较次数为 _。 ( A) 2 ( B) 3 ( C) 4 ( D) 5 5 对于 n个结点的单向链表 (无表头结点 ),需要指针单元的个数至少为 _。 ( A) n-1 ( B) n ( C) n+l ( D) 2n 6 在软件开发过程中,软件结构设计是描述 _。 ( A)数据存储结构 ( B)软 件体系结构 ( C)软件结构测试 ( D)软件控制过程 7 模块本身的内聚是模块独立性的重要性度量因素之一。在 7类内聚中,具有最强内聚的 类是 _。 (

3、A)顺序性内聚 ( B)过程性内聚 ( C)逻辑性内聚 ( D)功能性内聚 8 数据存储和数据流都是 _,仅仅是所处的状态不同。 ( A)分析结果 ( B)事件 ( C)动作 ( D)数据 9 数据的完整性是指数据的正确性、有效性和 _。 ( A)可维护性 ( B)独立性 ( C)安全性 ( D)相容性 10 关系 代数运算是以 _为基础的运算。 ( A)关系运算 ( B)谓词运算 ( C)集合运算 ( D)代数运算 11 以下叙述不正确的是 _。 ( A)分号是 C语言的必要组成部分 ( B) C程序的注释可以写在句的后面 ( C)函数是 C程序的基本单位 ( D)主函数的名字不一定用 ma

4、in表示 12 C语言运算对象必须是整型的运算符是 _。 ( A) %= ( B) / ( C) = ( D) = 13 下面一组中都是 C语言关键字的是 _。 ( A) double Int for ( B) main while goto ( C) volatile break static ( D) malloc sizeof new 14 执行语句 for(i=1;i+ 4;);后变量 i的值是 _。 ( A) 3 ( B) 4 ( C) 5 ( D)不定 15 若变量 a、 i已正确定义,且 i已正确赋值,合法的语句是 _。 ( A) a=1 ( B) +i; ( C) a=a+=5

5、; ( D) a=int(i); 16 有如下程序 main() int y=3,x=3,z=1; printf(“%d%dn“,(+x,y+),z+2); 运行该程序的输出结果是 _。 ( A) 3 4 ( B) 4 2 ( C) 4 3 ( D) 3 3 17 运行以下程序后,如果从键盘上输入 65 14回车,则输出结果为 _。 main() int m, n; printf(“Enter m,n:“); scanf(“%d%d“, while(m!=n) while(m n)m-=n; while(n m)n-=m; printf(“m=%dn“,m); ( A) m=3 ( B) m=

6、2 ( C) m=1 ( D) m=0 18 已经定义 ch为字符型变量,以下赋值表达式中错误的是 _。 ( A) ch= ( B) ch=62+3 ( C) ch=NULL ( D) ch=xaa 19 有如下程序 main() int x=1,a=0,b=0; switch(x) case 0: b+; case 1: a+; case 2: a+;b+; printf(“a=%d, b=%dn“,a,b) ; 该程序的输出结果是 _。 ( A) a=2,b=1 ( B) a=1,b=1 ( C) a=1,b=0 ( D) a=2,b=2 20 有以下函数定义: void fun(int

7、n,double x) 若以下选项中的变量都已正确定义并赋值,则对函数 fun正确调用语句是 _。 ( A) fun(int y, double m); ( B) k=fun(10,12.5); ( C) fun(x,n); ( D) void fun(n,x); 21 以下程序的运行结果为 _。 char *c = “ENTER“, “NEW“, “POINT“, “FIRST“ ; char *cp = c+3, c+2, c+1, c; char *cpp=cp; main () printf (“%sn“,*+cpp); ( A) ENTER ( B) NEW ( C) POINT (

8、 D) FIRST 22 关于指针概念,下列说法中,不正确的是 _。 ( A)一个指针变量只能指向同一类型的变量 ( B)一个变量的地址称为该变量的指针 ( C)只有同一类型变量的地址才能放到指向该类型变量的指针变量之中 ( D)指针变量可以由整数赋值,不能用浮点数赋值 23 在下列叙述中,正确的一条是 _。 ( A) #define printf都是 C语句 ( B) #define是 C语句,而 priatf不是 ( C) printf是 C语句,但 #define不是 ( D) #define和 printf都不是 C语句 24 若 a是 noat型变量, b是 unsigned型变量,

9、以下输入语句中,合法的是_。 ( A) scanf(“%6.2f%d“, ( B) scanf(“%f%n“, ( C) scaaf(“%f%3o“, ( D) scanf(“%f%f“, 25 下列程序的输出结果是 _。 main ( ) int n5=0,0,0,i,k=2; for (i=0;i ( A)不确定的值 ( B) 2 ( C) 1 ( D) 0 26 下列定义中,不正确的有 _。 ( A) #define PI 3.141592 ( B) #define S 345; ( C) int max(x,y); ( D) static char c; int x,y; 27 下列程

10、序的运行结果为 _。 #define MS DOS #ifdef MS DOS #define INTEGER SIZE 32 #else #define INTEGER SIZE 16 #endif main () printf (“integer_size=%dn“, INTEGER_SIZE); ( A) integersize=32 ( B) integer_size=16 ( C) integersize=32,integer_size=16 ( D)错误 28 在 Turbo C中绘图时,首先要对图形进行初始化,使用的函数是 _。 ( A) windows() ( B) windo

11、w() ( C) initgraph() ( D) init() 29 若有以下定义和语句,则下列选项中对 w数组元素非法引用的是 _。 int w2 3, (*pw) 3; pw=w; ( A) w0+2 ( B) *(pw+1)2 ( C) pw00 ( D) *(pw1+2) 30 下列程序的输出结果是 _。 main() char *s=“12134211“; int v4=0,0,0,0,k,i; for(k=0;sk;k+) switch(sk) case 1:i=0; case 2:i=1; case 3:i=2; case 4:i=3; vii+; for(k=O;k4;k+)

12、 printf(“%d “,vk); ( A) 4211 ( B) 0008 ( C) 4678 ( D) 8888 31 在结构化设计方法中,数据流图表达了问题中的数据流与加工间的关系,并且每一个 _实际上对应一个处理模块。 32 结构化程序设计的 3种基本结构分别是顺序、选择和 _。 33 二分法查找仅限于这样的表:表中的数据元素必须有序,其存储结构必须是_。 34 一个模块直接调用的其他模块的模块个数称为 _。 35 数据库系统中实现各种数据管理功能的核心软件是 _。 36 若 a=1, b=2,则表达式 !(x=A) (y=B) if(x y) if (y 0) z=0; else z

13、+=1; printf(“%dn“,z); 39 在循环中, continue语句与 break语句的区别是: _语句只是结束本次循环,然后进行循环的条件判定。 40 若有定义: int a44=1,2,3,4,0,4,6,8,10,1,3,5,7,则初始化后, a22得到的初值是 _。 41 下列语句的输出结果是 _。 char s20= “aaaa“,*sp=s; puts(strcat(sp,“AAAAA“); 42 下列程序的运行结果是 _。 #define POWER(x) (x)*(x) main() int i=1; printf(“%d,%d“,POWER(i+),i); 43

14、 下列程序的输出结果是 _。 main() imt i,sum; for(i=1;i 7;i+) sum+=i; printf(“%d“,sum); 44 设有下列的程序段; char str=“Hello“; char *ptr; ptr=str; 执行上面的程序段后, *(ptr+5)的值为 _。 45 下列程序的输出结果是 _。 #include stdio.h fun() static int a=0; a+=3;printf(“%d“,A) ; main() int cc; for(cc=1;cc 5;cc+)fun(); printf(“n“); 国 家二级( C语言)笔试模拟试卷

15、 34答案与解析 1 【正确答案】 C 【试题解析】 逻辑结构反映数据元素之间的逻辑关系,线性结构表示数据元素之间一对一的关系,非线性结构表示数据元素之间一对多或多对一的关系。 2 【正确答案】 C 【试题解析】 栈是一种后进先出表,选项 C中,先出栈的是 3,说明此时栈内必然有 1, 2,由于 1先于 2进浅,所以 1不可能在 2之前出栈,故选项 C这种出栈序列是不可能的。 3 【正确答案】 A 【试题解析】 希尔排序法的基本思想是:将整个无序列分割成若干小的子序列分别 进行插入排序。 4 【正确答案】 C 【试题解析】 二分法查找是用关键码与线性表的中间元素比较,然后根据比较结果来判断是结

16、束查找,还是在左边或者右边子表按相同的方法继续查找。本题中,与 11比较的关键码为 15, 8, 10, 12四个。 5 【正确答案】 C 【试题解析】 在 n个结点的单向链表 (无表头结点 )中,每个结点都有一个指针单元 (即指针域 ),加上头指针,至少需要 n+1个指针单元。 6 【正确答案】 B 【试题解析】 从工程管理解度来看,软件设计分两步完成:概要设计和详细设计。概要 设计 (又称结构设计 )将软件需求转化为软件体系结构、确定系统级接口、全局数据结构或数据库模式。 7 【正确答案】 D 【试题解析】 内聚性是一个模块内部各元素间彼此结合的紧密程度的度量。内聚共有 7类,它们之间的内

17、聚性由弱到强排列顺序为:偶然内聚、逻辑内聚、时间内聚、过程内聚、通信内聚、顺序内聚和功能内聚。 8 【正确答案】 D 【试题解析】 数据流图有 4种成分:源点或终点、处理、数据存储和数据流。数据存储是处于静止状态的数据,数据流是处于运动中的数据。 9 【正确答案】 D 【试 题解析】 数据模型的完整性规则是给定的数据模型中数据及其联系所具有的制约和依存规则,用以限定符合数据模型的数据库状态及其状态的变化,以保证数据的正确性、有效性和相容性。 10 【正确答案】 C 【试题解析】 关系代数运算是以关系代数作为运算对象的一组高级运算的集合。它的基本操作是并、交、差、笛卡尔积,另外还包括垂直分割 (

18、投影 )、水平分割(选择 )、关系的结合 (连接 )等。 11 【正确答案】 D 【试题解析】 C语言的程序是由主函数 main()开始运行,由主函数来调用其他函数,所以 D是错误的 。 12 【正确答案】 A 【试题解析】 在 C语言中,模运算 (即取余运算 )的运算对象必须是整型数据(常量、变量或表达式 )。 13 【正确答案】 C 【试题解析】 C语言中的关键字有 32个关键字 (参见 C语言教程 ),本题中只有C符合题意。 14 【正确答案】 C 【试题解析】 for语句的一般形式为; for(表达式 1;表达式 2;表达式 3)语句,循环结束的条件是 i+ 4,所以当 i+=4时,循

19、环结束,此时变量 i的值为 5。 15 【正确答案】 B 【试题解析】 选项 D显然 是错的,而选项 A没有分号结束,不是 C语句;a+=5违反了赋值表达式左侧必须为一个变量 (不能是常量或表达式 )的规定。 16 【正确答案】 D 【试题解析】 逗号表达式 (+x, y+)的值应该是 y+的值,由于 y+是先引用后自增,所以 y+的值是 3。 17 【正确答案】 C 【试题解析】 分析程序可知,该程序实现的功能是对数 m,n求其最大公约数。在本题中 m与 n的值分别为 65与 14,其最大公约数为 1,故其输出结果为 m=1。 18 【正确答案】 A 【试题解析】 反斜杠字符 “”赋给字符,

20、应该写成 ch=,所以 A是错误的。 19 【正确答案】 A 【试题解析】 在这个 switch语句中,因为 x的值为 1,所以执行 case 1:后面的a+,这样 a=1。但又由于其下没有 break语句,所以其后面的语句 “a+; b+”也将被执行,这样一来, a=2, b=1。 20 【正确答案】 C 【试题解析】 函数调用的一般形式为:函数名 (实参表列 );,实参与形参的个数应相等,类型应一致,在调用函数时,不要指定其返回类型,对于返回类型为void的函数,不能作为赋值表达式的组成 部分,所以选 C。 21 【正确答案】 C 22 【正确答案】 D 23 【正确答案】 D 24 【正

21、确答案】 C 25 【正确答案】 D 26 【正确答案】 C 27 【正确答案】 A 28 【正确答案】 C 29 【正确答案】 B 30 【正确答案】 B 31 【正确答案】 加工 【试题解析】 数据流图是从数据传递和加工的角度,来刻画数据流从输入到输出的移动变换过程。其中的每一个加工对应一个处理模块。 32 【正确答案】 重复(循环) 【试题解析 】 结构化程序设计包括 3种基本的结构:顺序结构、选择结构和重复结构 (循环结构 ),利用这 3种结构就足以表达出各种其他形式结构的程序设计方法。其中利用循环结构,可以简化大量的程序执行。 33 【正确答案】 顺序存储 (顺序方式存储 ) 【试题

22、解析】 二分法查找对表的要求是有序的顺序表,即第一要求是数据元素有序,第二要求是按顺序方式存储。 34 【正确答案】 扇出 【试题解析】 在结构图中,调用一个给定模块的模块个数称为扇入,一个模块直接调用的其他模块个数称为扇出。 35 【正确答案】 数据库 管理系统 【试题解析】 数据库管理系统是数据库的管理机构,它是一种系统软件,负责数据库中的数据组织、数据操纵、数据维护、控制及保护和数据服务等。 36 【正确答案】 0 【试题解析】 根据运算符的运算顺序可知,该表达式最后运算的是与 (i 7;i+)决定了循环次数为 6次,每次执行的操作是Sum+=i,但由于 sum没有初始化,并不知道 su

23、m的初值是多少,所以结果无定值 44 【正确答案】 0 【试题解析】 本题涉及字符数组和指针的两个知识点: 在 C语言中,字符型数组在存放字符串时会自动在末尾加上字符串结束 标识符 0所以题中数组 str有 6个元素。 ptr指向数组 str的首地址, ptr+5是指向 str5, *(ptr+5)是引用 str5的值,即 0。 45 【正确答案】 3 6 9 12 【试题解析】 本题考查最基本的 for循环: for(cc=1;cc 5;cc+)规定循环次数为4次,每次 a+=3即每次 a的值增 3,但因为 fun函数中变量 a为 static类型,所以每次调用完于函数之后,变量 a所做的改变都要保存。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1