[计算机类试卷]国家二级(C语言)笔试模拟试卷165及答案与解析.doc
《[计算机类试卷]国家二级(C语言)笔试模拟试卷165及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级(C语言)笔试模拟试卷165及答案与解析.doc(23页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级( C语言)笔试模拟试卷 165及答案与解析 1 下列叙述中错误的是 ( )。 ( A)一种数据的逻辑结构可以有多种存储结构 ( B)数据的存储结构与数据的处理效率无关 ( C)数据的存储结构与数据的处理效率密切相关 ( D)数据的存储结构在计算机中所占的空间不一定是连续的 2 下列叙述中错误的是 ( )。 ( A)线性表是由 n个元素组成的一个有限序列 ( B)线性表是一种线性结构 ( C)线性表的所有结点有且仅有一个前件和后件 ( D)线性表可以是空表 3 下列关于 栈的描述中错误的是 ( )。 ( A)栈是先进先出的线性表 ( B)栈只能顺序存储 ( C)栈具有记忆作用 ( D)
2、对栈的插入与删除操作中,不需要改变栈底指针 4 对长度为 n的线性表进行顺序查找,在最坏情况下需要比较的次数为 ( )。 ( A) 125 ( B) n/2 ( C) n ( D) n+1 5 下列叙述中正确的是 ( )。 ( A)在模块化程序设计中,一个模块应该尽量多的包括与其他模块联系的信息 ( B)在自顶向下、逐步细化的设计过程中,首 先应设计解决问题的第一个细节 ( C)在模块化程序设计中,一个模块内部的控制结构也要符合结构化原则 ( D)在程序设计过程中,不能同时采用结构化程序设计方法与模块化程序设计方法 6 下列特征中不是面向对象方法的主要特征的是 ( )。 ( A)多态性 ( B
3、)继承 ( C)封装性 ( D)模块化 7 有下列二叉树,对此二叉树中序遍历的结果为 ( )。 ( A) BDYEACFXZ ( B) DYBEAFCZX ( C) ABCDEFXYZ ( D) ABDYECFXZ 8 下列不属于软件工程的 3个要素的是 ( )。 ( A)工具 ( B)过程 ( C)方法 ( D)环境 9 设计软件结构是在软件生命周期的 ( )。 ( A)软件定义期 ( B)软件开发期 ( C)软件维护期 ( D)以上 3个都不是 10 下列工具中为需求分析常用工具的是 ( )。 ( A) PAD ( B) PFD ( C) N-S ( D) DFD 11 下列说法正确的是
4、( )。 ( A)一个 C程序可以有多个主函数 ( B)一个 C语言的函数中只允许有一对花括号 ( C) C程序的书写格式是自由的,一个语句可以写在一行上,也可以写在多行内 ( D)在对 C程序进行编译时,可以发现注释行中的拼写错误 12 下列程序的输出结果是 ( )。 #include stdio.h main() int a=4; printf(“%dn“,(a+=a-=a*a); ( A) -8 ( B) 14 ( C) 0 ( D) -24 13 表示关系 abc的 C语言表达式为 ( )。 ( A) (a =b)”,则正确的输入语句是 ( )。 ( A) scanf(“%1f“,a)
5、; ( B) scanf(“%f“,break; case 1=m+; switch(b%2) defaut:m+; case0:m+;break; printf(“%dn“,m); 程序运行后的输 ( A) 1 ( B) 2 ( C) 3 ( D) 4 19 下列程序的运行结果是 ( )。 main() int x=1,y=3,a=0; while(x+!=(y-=1) a+=1; if(y x)break; printf(“%d,%d,%dn“,x,y,a); ( A) 2,3,2 ( B) 2,3,1 ( C) 1,3,3 ( D) 3,1,2 20 有下列程序: main() int
6、x=5; do printf(“%d“,x-=4); while(!(-X); 程序的输出结果是 ( )。 ( A) 1 ( B) 20 ( C) 1-4 ( D)死循环 21 若变量已正确定义,下列正确的程序段是 ( )。 ( A) while(ch=getchar()=N)putchar(ch); ( B) while(ch=getchar()=n)putchar(ch); ( C) while(ch=getchar()!=N)putchar(ch); ( D) while(ch=getchar()!=n)putchar(ch); 22 若有下列定义,则对 a数组元素地址的正确引用是 (
7、)。 int a5,*p=a; ( A) p+5 ( B) *a+1 ( C) ”则对 a数组的第 i行第 j列元素的正确引用为 ( )。 ( A) *(*(a+i)+j) ( B) (a+i)j ( C) *(a+i+j) ( D) *(a+i)+j 24 下列选项中,当 x为大于 1的奇数时,值为 0的表达式是 ( )。 ( A) x%2=1 ( B) x/2 ( C) x%2!=0 ( D) x%2=0 25 下列叙述中不正确的是 ( )。 ( A)在 C语言中调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参 ( B)在 C的函数中,最好使用全局变量 ( C)外部变量可以在函
8、数之间传递数据 ( D)自动变量实质上是一个函数内部的局部变量 26 定义下列结构体 (联合 )数组: struct St char name15; int age; a10=“ZHAO“,14,“WANG“,15,“LIU“,16,“ZHANG“,17; 执行语句printf(“%d,%c“,a2.age,*(a3.name+2)的输出结果为 ( )。 ( A) 15,A ( B) 16,H ( C) 16,A ( D) 17,H 27 设有下列语句 int a=1,b=2,c; c=a (b 2); 执行后, C的值为 ( )。 ( A) 6 ( B) 7 ( C) 8 ( D) 9 28
9、 有下列程序: #include stdio.h main() char c1,c2,c3,c4,c5,c6; scanf(“%c%c%c%c“,c6=getchar(); putchar(c1);putchar(c2); printf(“%c%cn“,c5,c6); 程序运行后,若从键盘输入 (从第 1列开始 ): 123 CR 45678 CR 则输出结果是 ( ( A) 1267 ( B) 1256 ( C) 1278 ( D) 1245 29 若有下列说明和语句,则对结构体变量 st中成员 i的引用方式不正确的是( )。 Struct stu int i; int name; st,*
10、p; p= 执行后的输出结果是 ( )。 ( A) 7 ( B) 3 ( C) 2 ( D) 0 33 下列程序的输出结果是 ( )。 #include stdio.h int fun(int x) int p; if(x=0x=1) return 3; else p=x-fun(x-2); return p; void main() printf(“n%d“,fun(5); ( A) 5 ( B) 3 ( C) 7 ( D) 1 34 下列程序的输出结果是 ( )。 point(char*pt); main() char b4a,c,s,f,*pt=b; pt=point(pt); prin
11、tf(“%cn“,*pt); point(char*p) p+=3; return p; ( A) s ( B) c ( C) f ( D) a 35 已有定义 int(*q)(),指针 q可以 ( )。 ( A)指向函数的入口地址 ( B)代表函数的返回值 ( C)表示函数的类型 ( D)表示函数返回值的类型 36 下列程序的输出结果是 ( )。 #include stdio.h #include string.h main() char a=“n123“; printf(“%d,%dn“,strlen(a),sizeof(a); ( A) 5,6 ( B) 5,5 ( C) 6,6 ( D
12、) 6,5 37 下列选项中不会引起二义性的宏定义是 ( )。 ( A) #define S(x)x*x ( B) #define S(x)(x)*(x) ( C) #define S(x)(x*x) ( D) #define S(x)(x)*(x) 38 若有运算符: 、 *=、 %、 sizeof,则它们按优先级 (由低至高 )的正确排列次序为 ( )。 ( A) *= % sizeof ( B) *= % sizeof ( C) %= sizeof % ( D) *= % sizeof 39 在 C语言中,下列关于文件操作的叙述正确的是 ( )。 ( A)对文件操作必须先关闭文件 ( B
13、)对文件操作必须先打开文件 ( C)对文件操作顺序没有统一规定 ( D)以上全错 40 利用 fseek函数可实现的操作是 ( )。 ( A)实现文件的顺 序读写 ( B)改变文件的位置指针 ( C)实现文件的随机读写 ( D)以上答案均正确 40 数据库系统其内部分为三级模式,即概念模式、内模式和外模式。其中,_是用户的数据视图,也就是用户所见到的数据模式。 40 排序是计算机程序设计中的一种重要操作,常见的排序方法有插入排序、_和选择排序。 40 栈的 3种基本运算是:入栈、退栈和 _。 40 若 a的值为 1,则表达式 !a+a的值是 _。 40 若 a是 int型变量,且 a的初值为
14、4, 则计算 a+=a-=a*a表达式后 a的值为_。 40 下列程序的输出结果是 _。 #include stdio.h main() int a=2,b=-1,c=2; if(a b) if(b 0)c=0; else c+; printf(“%dn“,c); 40 下列程序的循环次数是 _。 x=2; do x=x*x; while(!x); 40 下列程序段的运行结果是 _。 int x=0,y=0; while(x 15)y+,x+=+y; printf(“%d,%d“,y,x); 40 下列程序的运行结果是 _。 main() int s=0,i=1; while(s =10) s
15、=s+i*i; i+; printf(“%d“,-i); 40 下列程序的输出结果是 _。 long fun5(int n) long s; if(n=1)(n=2) s=2; else s=n+fun5(n-1); return(s); main() long x; x=fun5(4); printf(“%1dn“,x); 40 下列程序的输出结果是 _。 main() int a=2,b=4,c=6; int*p1=&a,*p2,&b,*p; *(p=&c)=*p1*(*p2); printf(“%dn“,c); 40 下列程序运行后的输出结果是 _。 #include stdio.h m
16、ain() char s20; scanf(“%s“,s); printf(“%s“,s); 运行程序,输入 HOW ARE YOU。 40 下列程序的运行结果是 _。 #define POW(r)(r)* main() int x=3,y=2,t; t=POW(x+y); printf(“%dn“,t); 国家二级( C语言)笔试模拟试卷 165答案与解析 1 【正确答案】 B 【试题解析】 数据的存储结构分为顺序结构和链式结构,一个数据的逻辑结构可以有多种存储结构。顺序结构中数据元素所占的存储空间是连续的,而链式存储结构中,数据元素所占的存储空间不一定是连续的。数据的存储结构与数据的处理效
17、率密切相关。 2 【正确答案】 C 【试题解析】 线性表是一种线性结构,由 n(nO)个元素组成,所以线性表可以是空表。但是在线性表中,第一个结点没有前件,最后一个结点没有后件,其他结点有且只有一个前件和后件,所以选项 C)是错误的。 3 【正确答案】 B 【试题解析】 栈是限定只能在表的一端进行插入和删除操作的线性表,入栈和出栈都是在栈顶进行,它们的操作特点是先进后出,因此具有记忆作用。栈可以采用顺序存储,也可以采用链式存储。 4 【正确答案】 C 【试题解析】 对线性表进行顺序查找时,从表中的第一个元素开始,将给定的值与表中逐个元素的关键字进行比较,直到两者相符,查找到所要找的元素为止。在
18、最坏情况下,要查找的元素是表的最后一个元素或查找失败,这两种情况都需要将这个元素与表中的所有元素进行比较,因此比较次数为 n。 5 【正确答案】 C 【试题解析 】 在模块化程序设计中,模块之间的联系可以通过程序的控制结构来实现,在自顶向下、逐步细化的设计过程中,首先要考虑全局目标,而不是细节。在程序设计中模块化和结构化可以同时使用,一个模块的内部结构也要符合结构化设计原则。 6 【正确答案】 D 【试题解析】 面向对象设计方法与面向过程设计方法有本质的不同,其基本原理是:使用现实世界的概念抽象地思考问题从而自然地解决问题。其特点包括:分类性、多态性、封装性、模块独立性、继承和多态性等。模块化
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 语言 笔试 模拟 165 答案 解析 DOC
