[计算机类试卷]国家二级(C语言)笔试模拟试卷135及答案与解析.doc
《[计算机类试卷]国家二级(C语言)笔试模拟试卷135及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级(C语言)笔试模拟试卷135及答案与解析.doc(24页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级( C语言)笔试模拟试卷 135及答案与解析 1 下列叙述中正确的是 ( )。 ( A)算法的执行效率与数据的存储结构无关 ( B)算法的空间复杂度是指算法程序中指令 (或语句 )的条数 ( C)算法的有穷性是指算法必须能在执行有限个步骤之后终止 ( D)以上 3种描述都不对 2 数据的存储结构是指 ( )。 ( A)数据所占的存储空间 ( B)数据的逻辑结构在计算机中的存放形式 ( C)数据在计算机中的顺序存储方式 ( D)存储在计算机外存中的数据 3 栈和队列的共同点是 ( )。 ( A)都是先进先出 ( B)都是先进后出 ( C)只允许在端点处插入和删除元素 ( D)没有共同特点
2、 4 有下列二叉树,对此二叉树中序遍历的结果为 ( )。 ( A) ABCDEF ( B) BDAECF ( C) ABDCEF ( D) ABCDFE 5 对长度为 n的线性表进行顺序查找,在最坏情况下需要比较的次数为 ( )。 ( A) 125 ( B) n/2 ( C) n ( D) n+1 6 源程序的文档化不包括 ( )。 ( A)符号名的命名要有实际意义 ( B)正确的文档形式 ( C)良好的视 觉组织 ( D)正确的程序注释 7 下列描述中正确的是 ( )。 ( A)软件工程只是解决软件项目的管理问题 ( B)软件工程主要解决软件产品的生产率问题 ( C)软件工程的主要思想是强调
3、在软件开发过程中需要应用工程化原则 ( D)软件工程只是解决软件开发过程中的技术问题 8 为了提高软件模块的独立性,模块之间最好是 ( )。 ( A)控制耦合 ( B)公共耦合 ( C)内容耦合 ( D)数据耦合 9 数据库系统的核心是 ( )。 ( A)数据模型 ( B)数据库管理系统 ( C)数 据库 ( D)数据库管理员 10 待排序的关键码序列为 (33, 18, 9, 25, 67, 82, 53, 95, 12, 70),要按关键码值递增的顺序排序,采取以第一个关键码为基准元素的快速排序法,第一趟排序后关键码 33被放到第 ( )个位置。 ( A) 3 ( B) 5 ( C) 7
4、( D) 9 11 请读程序: #include stdio.h main() int a;float b,c; scanf(“%2d%3f%4f“, printf(“na=%d,b=%f,c=%fn“,a,b,c) 若运行时从键盘上输入 987643210则上面程序的输出结果是 _。 ( A) a=98, b=75,c=4321 ( B) a=10,b=432,c=8765 ( C) a=98,b=765.000000c=4321.000000 ( D) a=98, b=765.0,c=4321.000000 12 请选出以下程序的输出结果 _。 #include stdio.h sub(x
5、,y,z) int x,y,*z; *z=y-x; main() int a,b,c; sub(10,5,sub(7,a,sub(a,b, printf(“%d,%d,%dn“,a,b,c); ( A) 5,2,3 ( B) -5,-12,-7 ( C) -5,-12,-17 ( D) 5,-2,-7 13 设整型数 i=5,则 printf(“%d“i+i);的输出为 _。 ( A) 10 ( B) 11 ( C) 12 ( D)语法错误 14 若要用下面的程序片段使指针变量 p指向 个存储整型变量的动态存储单元 int *p; p=_malloc(sizeof(int); 则应填入 _。
6、( A) int ( B) int* ( C) (*int) ( D) (int*) 15 下面程序输出的结果是 _。 main() inti=5,j=9,x; x=(ij?i:(j=7); printf(“n%d,%d“,i,j) ( A) 5,7 ( B) 5,5 ( C)语法错误 ( D) 7,5 16 若有以下定义和语句: int a=1,2,3,4,5,6,7,8,9,10),*p=a; 则值为 3的表达式是 _。 ( A) P+=2,*(p+) ( B) p+=2,*+p ( C) p+=3,*p+ ( D) p+=2,+*p 17 设 a、 b和 c都是 int型变量,且 a=3
7、、 b=4、 c=5,则下面的表达式中,值为 0的表达式是 _。 ( A) a ( A) ap-a ( B) *( s0=a 0,s1=a1 pp=s p=(int*)malloc(sizeof(int); *pp=s11; p=*pp; printf(“%dn“,*p); ( A) 1 ( B) 7 ( C) 9 ( D) 11 21 若变量已正确定义,下列正确的程序段是 ( )。 ( A) while(ch=getchar()=N)putchar(ch); ( B) while(ch=getchar()=n)putchar(ch); ( C) while(ch=getchar()!=N)p
8、utchar(ch); ( D) while(ch=getchar()!=n)putchar(ch); 22 若有下列定义,则对 a数组无素地址的正确引用是 ( )。 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 下列叙述中不正确
9、的是 ( )。 ( A)在 C语言中调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参 ( B)在 C的函数中,最好使用全局变 量 ( C)外部变量可以在函数之间传递数据 ( 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 (
10、 D) 17, H 27 设有下列语句 int a=1,b=2,c; c=a(b 2); 执行后, C的值为 ( )。 ( A) 6 ( B) 7 ( C) 8 ( D) 9 28 有下列程序: #include stdio.h main( ) char c1,c2,c3,c4,c5,c6; scanf(“%c%c%c%c“, c5=getchar(); c6=getchar(); putchar(c1);putchar(c2); printf(“%c%cn“,c5,c6); 程序运行后,若从键盘输入 (从第 1列开始 ) 123 CR 45678 CR 则输出结果是 ( )。 ( A) 12
11、67 ( B) 1256 ( C) 1278 ( D) 1245 29 若有下列说明和语句,则对结构体变量 st中成员 i的引用方式不正 确的是( )。 Struct stu int i; int name; st,*p; p= ( A) st.i ( B) *p.i ( C) (*p).i ( D) p- i 30 字符串 “ABCDEF“的长度是 ( )。 ( A) 15 ( B) 10 ( C) 7 ( D) 8 31 下列选项中,值为 1的表达式是 ( )。 ( A) 1-0 ( B) 1-0 ( C) 1-0 ( D) 0-0 32 有下列程序: fun(int x) int p;
12、if(x= =0 x= =1) return(3); p=x-fun(x-2); return p; main( ) print f(“%dn“,fun(7 ); 执行后输出的结果是 ( )。 ( 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() print f(“n%d“, fun(5); ( A) 5 ( B) 3 ( C) 7 ( D) 1 34 下
13、列程序的输出结果是 ( )。 point(char*pt); main() char b4= a,c,s,f ,*pt=b; pt=point(pt); printf(“%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() c
14、har a=“n123“; printf (“%d,%dn“,strlen(a),sizeof(a); ( A) 5,6 ( B) 5,5 ( C) 6,6 ( D) 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 (
15、C) %= sizeof % ( D) *= % sizeof 39 在 C语言中,下列关于文件操作的叙述正确的是 ( )。 ( A)对文件操作必须先关闭文件 ( B)对文件操作必须先打开文件 ( C)对文件操作顺序没有统一规定 ( D)以上全错 40 利用 fseek函数可实现的操作是 ( )。 ( A)实现文件的顺序读写 ( B)改变文件的位置指针 ( C)实现文件的随机读写 ( D)以上答案均正确 41 测试用例包括输入值集和【 】值集。 42 某二叉树中度为 2的结点有 18个,则该二叉树中有【 】个叶子结点。 43 数据结构分为逻辑结构与存储结构,线性链表属于【 】。 44 在关系模
16、型中,把数据看成一个二维表,每一个二维表称为一个【 】。 45 数据库设计分为以下 6个设计阶段:需求分析阶段、【 】、逻辑设计阶段、物理设计阶段、实施阶段、运行和维护阶段。 46 阅读下面程序段,则执行后输出的结果是【 】。 #include “stdio.h“ main() char fun(char, int); char a=A; int b=13; a=fun(a, b); putchar(a); char fun(char a, int b) char k; k=a+b; return k; 47 阅读下面语句,则程序的执行结果是【 】。 #include “stdio.h“ ma
17、in() int a=-1, b=1, k; if(+a 0) main() int b10=1, 2, 3, 4, 5, 6, 7, 8, 9, 10; int i, s=0; reverse(b, 8); for(i=6; i 10; i+)s+ bi; printf(“%dn“, s); 51 有如下图所示的双链表结构,请根据图示完成结构体的定义: struct aa int data; 【 】 node; 52 有以下程序段,且变量已正确定义和赋值 for(s=1.0, k=1; k =n; k+)s=s+1.0/(k*(k+1); printf(“s=%fnn“, s); 请填空,使
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 语言 笔试 模拟 135 答案 解析 DOC
