[计算机类试卷]国家二级(C语言)笔试模拟试卷99及答案与解析.doc
《[计算机类试卷]国家二级(C语言)笔试模拟试卷99及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级(C语言)笔试模拟试卷99及答案与解析.doc(31页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级( C语言)笔试模拟试卷 99及答案与解析 1 算法的空间复杂度是指 ( A)算法程序的长度 ( B)算法程序中的指令条数 ( C)执行算法程序所占的存储空间 ( D)算法执行过程中所需要的存储空间 2 线性表的链式存储结构是一种 ( A)随机结构 ( B)顺序结构 ( C)索引结构 ( D)散列结构 3 设有下列二叉树: 对此二叉树先序遍历的结果是 ( A) ABCDEF ( B) DBEAFC ( C) ABDECF ( D) DEBFCA 4 编制一个好的程序,首先要保证它的正确性和可靠性, 还应强调良好的编程风格,在书写功能性注释时应考虑 ( A)仅为整个程序作注释 ( B)仅
2、为每个模块作注释 ( C)为程序段作注释 ( D)为每个语句作注释 5 下列哪个面向对象程序设计不同于其他语言的主要特点 ( A)继承性 ( B)消息传递 ( C)多态性 ( D)静态联编 6 需求分析最终结果是产生 ( A)项目开发计划 ( B)需求规格说明书 ( C)设计说明书 ( D)可行性分析报告 7 在进行单元测试时,常用的方法是 ( A)采用白盒测试,辅之以黑盒测试 ( B)采用黑盒测试,辅之以白 盒测试 ( C)只使用白盒测试 ( D)只使用黑盒测试 8 数据库是 ()的集合,它具有统一的结构格式并存放于统一的存储介质,可被各个应用程序所共享 ( A)视图 ( B)消息 ( C)
3、数据 ( D)关系 9 下列叙述中,不正确的是 ( A)数据库技术的根本目标是要解决数据共享的问题 ( B)数据库系统中,数据的物理结构必须与逻辑结构一致 ( C)数据库设计是指设计一个能满足用户要求,性能良好的数据库 ( D)数据库系统是一个独立的系统,但是需要操作系统的支持 10 规范化理论中,分解 ()是消除其 中多余的数据相关性 ( A)关系运算 ( B)内模式 ( C)外模式 ( D)视图 11 以下叙述中正确的是 ( A)构成 C语言程序的基本单位是函数 ( B)可以在一个函数中定义另一个函数 ( C) main()函数必须放在其他函数之前 ( D)所有被调用的函数一定要在调用之前
4、进行定义 12 以下选项中合法的实型常数是 ( A) 5E2.0 ( B) E-3 ( C) 2.00E+00 ( D) 1.3E 13 以下选项中合法的用户标识符是 ( A) long ( B) _2Test ( C) 3Dmax ( D) A.dat 14 已知大写字母 A的 ASCII码值是 65,小写字母 a的 ASCII码是 97,则用八进制表示的字符常量 101是 ( A)字符 A ( B)字符 a ( C)字符 e ( D)非法的常量 15 以下非法的赋值语句是 ( A) n=(i=2, +i); ( B) j+; ( C) +(i+1); ( D) x=j 0; 16 设 a和
5、 b均为 double型变量,且 a=5.5、 b=2.5,则表达式 (int)a+b/b的值是 ( A) 6.5 ( B) 6 ( C) 5.5 ( D) 6 17 已知 i、 j、 k为 int型变量,若从键盘输入: 1, 2, 3回车,使 i的值为 1、 j的值为 2、 k的值为 3,以下选项中正确的输入语句是 ( A) scanf(“%2d%2d%2d”, printf(“%dn“, num); ( D) 1 1 1 1 2 2 2 3 3 4 23 下面的关键字中,不能够从循环体中跳到循环体外的是 _。 ( A) goto ( B) break ( C) return ( D) co
6、ntinue 24 以下各选项企图说明一种新的类型名,其中正确的是 _。 ( A) typedef vl int; ( B) typedef v2=int ( C) typedef int v3; ( D) typedef v4: int 25 为了避免嵌套的 if-else的二义性, C语言规定: else与 _配对。 ( A)缩排位置相同的 if ( B)其之前最近的 if ( C)其之后最近的 if ( D)同一行上的 if 26 在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是 v。 ( A)地址传递 ( B)单向值传递 ( C)由实参传给形,再由形参传回实参 ( D
7、)传递方式由用户指定 27 以下函数值的类型是 _。 fun(float x) float y; y=3*x-4; return y; ( A) int ( B)不确定 ( C) void ( D) float 28 以下选项中,非法的字符常量是 _。 ( A) t ( B) 17 ( C) n ( D) xaa 29 以下程序的输出结果是 _。 #include stdio main() int a=200; #define a 100 printf(“%d“, a) ; #undefa printf(“%d“,a) ; ( A) 200 100 ( B) 100 100 ( C) 100
8、200 ( D) 200 200 30 若有说明 int i,j=2, *p= printf(“%s“str); ( A) xyzabcABC ( B) abcABC ( C) xyzabc ( D) xyzABC 35 以下数组定义中不正确的是 _。 ( A) int a23; ( B) int b3=0, 1,2; ( C) int c1001000; ( D) int d3=1,2, 1,2,3, 1,2, 3,; 36 以下程序的输出结果是 _。 main() int a44=1, 3, 5, 2, 4,6, 3, 5, 7; printf(“%d%d%d%dn“,a03,a12,a2
9、1,30); ( A) 650 ( B) 1470 ( C) 5430 ( D)输出值不定 37 在说明语句 int *f();中,标识符 f代表的是 _。 ( A)一个用于指向整型数据的指针变量 ( B)一个用于指向一维数组的行指针 ( C)一个用于指向函数的指针变量 ( D)一个返回值为指针型的函数名 38 以下程序的输出结果是 _。 main() char st20=“hello、 0t“; printf(“%d%dn“,strlen(st),sizeof(st); ( A) 99 ( B) 520 ( C) 1320 ( D) 2020 39 以下程序运行后的输出结果是 _。 int
10、d=1; fun(int p) static int d=5; d+=p; printf(“%d“, D) ; return d; main() int a=3; printf(“%dn,fun (a+fun(D) ); ( A) 699 ( B) 669 ( C) 61515 ( D) 6615 40 以下选项中,不能正确赋值的是 _。 ( A) char s110; s1=“chest“; ( B) char s2=C, t, e, s, t; ( C) char s3 20=“Chest“; ( D) char * s4=“Cestn“ 41 以下程序输出正确的是 _。 amovep(i
11、nt *P, int(*A) 3, int n) int i,j; for(i=0; i n;i+ for(j=0;j n;j+) *p=aij; p+; main() int *p,a33=1, 3, 5, 2, 4, 6; p=(int*)malloc(100); amovep(p,a, 3); printf(“%d%dn“, p2, p5); free(p); ( A) 56 ( B) 25 ( C) 34 ( D)程序错误 42 下面程序的输出结果是 _。 #define a 121 const b=12; enum ca1,a2; main() printf(“%d,%d,%d“,s
12、izeof(a) ,sizeof(b) ,sizeof(enum c) ); ( A) 121, 0, 4 ( B) 2,2,2 ( C) 0,2, 4 ( D) 0,2,2 43 以下程序的输出结果是 _。 struct HAR int x,y; struct HAR*p; h2; main() h0,x=1;h0.y=2; h1x=3; h1.y=4; h0 p、 h1 .p=h; printf(“%d%dn“, (h0 p)- x,(h1.p)- y; ( A) 12 ( B) 23 ( C) 14 ( D) 32 44 变量 a所占的内存字节数是 _。 ( A) 4 ( B) 5 (
13、C) 6 ( D) 8 union U char st4; int i; long l; ; Struct A int c; union U u; a; 45 以下程序的结果是 _ 。 int a,b; void fun() a=100; b=200; main() int a=5,b=7; fun() printf(“%d%dn“, a, b) ; ( A) 100200 ( B) 57 ( C) 200100 ( D) 75 46 以下程序的输出结果是 _。 #define M(x,y,z) x*y+z main() int a=1,b=2,c=3; printf(“%dn“,M(a+b,
14、b+c,c+a) ); ( A) 19 ( B) 17 ( C) 15 ( D) 12 47 若有以下说明和语句: struct stint n; char * ch;; struct st a3=5,“abc“, 7, “def“,9, “ghk“, *p=a; 则值为 6的表达式是 _。 ( A) p+- n ( B) p- n+ ( C) (*p).n+ ( D) +p- n 48 整型变量 X和 Y的值相等,且为非 0值,则以下选项中结果为 0的表达是 _。 ( A) X|Y ( B) X|Y ( C) X int i; myf=fopm(fname, “w“); for(i=0; i
15、 strlen(st); i+)fputc(sti,myf); fclose(myf); main()fun(“test.t“,“new world“);fun(“test.t“,“hello,“); ( A) hello, ( B) new worldhello ( C) new world ( D) hello.rld 51 栈的基本运 算有三种:入栈、退栈和【 】。 52 在面向对象方法中,信息隐蔽是通过对象的【 】性来实现的。 53 数据流的类型有【 】和事务型。 54 数据库系统中实现各种数据管理功能的核心软件称为【 】。 55 关系模型的数据操纵即是建立在关系上的数据操纵,一般有【
16、 】、增加、删除和修改四种操作。 56 表示 “整数 x的绝对值大于 5“时值为 “真 “的 C语言表达式是【 】。 57 以下程序的输出结果是【 】。 main() unsigned short a=65536; int b; printf(“%dn“, b=A) ; 58 若有定义 int a=10,b=9,c=8;,接着顺序执行下列语句,变量 b中的值是【 】。 c=(a-=(b-5); c=(a%11)+(b=3); 59 以下程序运行后的输出结果是 【 】 。 main() int p=30; printf(“%dn“,(p/3 0?p/10: p%3); 60 函数 pi的功能是根
17、据以下近似公式求 值: (*)/6=1+1/(2*2)+1/(3*3)+1(n*n) 现在请你在下面的函数中填空,完成求 的功能。 #include “math.h“ double s=0.0; long i; for(i=1; i =n; i+)s=s+ 【 】 ; return(sqrt(6*s); 61 函数 pi的功能是根据以下公式近似求得的: pi*pi/6=1+1/(2*2)+1/(3*3)+1/(n*n) 请在下面的函数中填空,完成求 pi的功能。 #include math.h double pi(long n) doubles=0.0,long i; for(i=1; i =
18、n; i+)s=s+ 【 】 ; return(sqrt(6*s); 62 若输入字符串: abcde,则以下 while循环体将执行【 】次。 while(ch=getchar()=e)printf(“*“); 63 以下函数用来求出两整数之和,并通过形参将结果传回,请填空。 void func(int x,int y, 【 】 z) *z=x+y; 64 若有以下定义,则不移动指针 p,且通过指针 p引用值为 98的数组元素的表达式是【 】。 int w10=23,54,10,33,47,98,72,80,61, *p=w; 65 设在主函数中有以下定义和函数调用语句,且 fun函数为 v
19、oid类型;请写出fun函数的首部 【 】 。要求形参名为 b。 main() double s1022; int n; fun(s); 66 有以下程序: int f(int n) if(n=1)return 1; else return f(n-1)+1; main() int i,j=0; for(i=1; i 3; i+)j+t(i); printf(“%dn“,j); 程序运行后的输出结果是 【 】 。 67 以下程序的输出结果是 【 】 。 void fun() static int a=0; a+=2; printf(“%d“, A) ; main() int cc; for(c
20、c=1; cc 4; cc+)fun(); printf(“n“); 68 以下程序的输出结果是 【 】 。 #define MAX(x, y) (x) (y)?(x): (y) main() int a=5, b=2, c=3, d=3, t; t=MAX(a+b, c+D) *10; printf(“%dn“,t); 69 实现程序可将磁盘中的一个文件复制到另一个文件中,两个文件的文件名在可执行命令的命令行中 (相当于 copy命令 ),假定文件在当前目录下。请补全程序。 #include stdio.h void main(int argc,char*argv) FILE*f1, *f2
21、; if(argc 【 】 ) printf(“parameter error!n“); exit(0); f1=fopen(argv1, “r“); f2=fopen(argv2,“w“); while( 【 】 )fputc(fgetc(f1), f2); fclose(f1); fclose(f2); 国家二级( C语言)笔试模拟试卷 99答案与解析 1 【正确答案】 D 【试题解析】 算法的空间复杂度一般是指这个算法执行时所需要的内存空间,其中包括算法程序所占的空间、输入的初始数据所占的存储空间以及算法执行过程中所需要的额外空间,其中额外空间还包括算法程序执行过程的工作 单元以及某种数
22、据结构所需要的附加存储空间。 2 【正确答案】 B 【试题解析】 线性表的链式存储结构中的每一个存储结点不仅含有一个数据元素,还包括指针,每一个指针指向一个与本结点有逻辑关系的结点。此类存储方式属于顺序存储。 3 【正确答案】 C 【试题解析】 二叉树的遍历分为先序、中序、后序三种不同方式。本题要求先序遍历;遍历顺序应该为:访问根结点 -先序遍历左子树 -先序遍历右子树。按照定义,先序遍历序列是 ABDECF。 4 【正确答案】 C 【试题解析】 功能性注释是嵌在源程序体中的,用以描述其后的语句或程序段是在做什么工作,或者执行了下面的语句会怎么样。所以它描述的是一段程序,是为程序段做注释,而不
23、是每条语句。 5 【正确答案】 A 【试题解析】 继承是一个子类直接使用父类的所有属性和方法。它可以减少相似的类的重复说明,从而体现出一般性与特殊性的原则,这使得面向对象程序设计语言有了良好的重用性,也是其不同于其他语言的主要特点。 6 【正确答案】 B 【试题解析】 需求分析应交付的主要文档就是需求规格说明书。 7 【 正确答案】 A 【试题解析】 白盒测试是测试程序内部逻辑结构,黑盒测试只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。从程序内部的逻辑结构对系统进行测试才是测试的根本,更容易发现和解决程序中的问题,因此单元测试时应该以白盒测试为主,而黑盒测试为辅。 8 【正确
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 语言 笔试 模拟 99 答案 解析 DOC
