[计算机类试卷]国家二级(C语言)笔试模拟试卷85及答案与解析.doc
《[计算机类试卷]国家二级(C语言)笔试模拟试卷85及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级(C语言)笔试模拟试卷85及答案与解析.doc(33页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级( C语言)笔试模拟试卷 85及答案与解析 1 算法执行过程中,所需要的存储空间称为算法的 ( A)时间复杂度 ( B)计算工作量 ( C)空间复杂度 ( D)工作空间 2 下列关于队列的叙述中,正确的是 ( A)在队列中只能插入数据 ( B)在队列中只能删除数据 ( C)队列是先进先出的线性表 ( D)队列是先进后出的线性表 3 设有下列二叉树: 对此二叉树后序遍历的结果是 ( A) ABCDEF ( B) BDAECF ( C) ABDCEF ( D) DBEFCA 4 下面描述中,不符合结构 化程序设计风格的是 ( A)使用顺序、选择和重复 (循环 )三种基本控制结构表示程序的控
2、制逻辑 ( B)注重提高程序的可读性 ( C)模块只有一个人口和一个出口 ( D)使用 goto语句 5 在面向对象设计中,对象有很多基本特点,其中 “从外面看只能看到对象的外部特性,而对象的内部对外是不可见的。 ”这一性质指的是对象的 ( A)分类性 ( B)标识惟一性 ( C)多态性 ( D)封装性 6 用黑盒技术测试用例的方法之一为 ( A)因果图 ( B)逻辑覆盖 ( C)循环覆盖 ( D)基本路径测试 7 软 件需求分析阶段的工作可以分为 4个方面:需求获取、需求分析、编写需求分析说明书和 ( A)阶段性报告 ( B)需求评审 ( C)总结 ( D)都不正确 8 在数据库管理系统提供
3、的数据语言中,负责数据的查询及增、删、改等操作的是 ( A)数据定义语言 ( B)数据转换语言 ( C)数据操纵语言 ( D)数据控制语言 9 关系数据库的数据及更新操作必须遵循 ()等完整性规则。 ( A)实体完整性和参照完整性 ( B)参照完整性和用户定义的完整性 ( C)实体完整性和用户定义的完整性 ( D)实体完整性、参照 完整性和用户定义的完整性 10 实体一联系模型中,实体与实体之间的联系不可能是 ( A)一对一 ( B)多对多 ( C)一对多 ( D)一对零 11 用 C语言编写的代码程序 ( A)可立即执行 ( B)是一个源程序 ( C)经过编译即可执行 ( D)经过编译解释才
4、能执行 12 结构化程序由三种基本结构组成,三种基本结构组成的算法 ( A)可以完成任何复杂的任务 ( B)只能完成部分复杂的任务 ( C)只能完成符合结构化的任务 ( D)只能完成一些简单的任务 13 以下定义语句中正确的是 ( A) char a=Ab=B; ( B) float a=b=10.0; ( C) int a=10, *b= Printf(“%dn“,a,b) ; 程序运行后的输出结果是 ( A)错误信息 ( B) 666 ( C) 888 ( D) 666,888 20 有以下程序 main() int i; for(i=0;i 3;i+) switch(i) case0:p
5、rintf(“%d“,i); case2:printf(“%d“,i); default:printf(“%d“,i); 程 序运行后的输出结果是 ( A) 22111 ( B) 21021 ( C) 122 ( D) 12 21 有以下程序 main() int s=0,a=1,n; seanf(“%d“,a=a-2; while(a!=n); printf(“%dn“,s); 若要使程序的输出值为 2,则应该从键盘给n输入的值是 ( A) -1 ( B) -3 ( C) -5 ( D) 0 22 若有如下程序段,其中 s、 a、 b、 c均已定义为整型变量,且 a、 c均已赋值 (c大于
6、0) s=a; for(b=1;b c;b+)s=s+1; 则与上述程序段功能等价的赋值语句是 ( A) s=a+b; ( B) s=a+c; ( C) s=s+c; ( D) s=b+c; 23 有以下程序 main() int k=4, n=0; for(;n k;) n+; if(n%3!=0)continue; K-; printf(“%d,%dn“,k,n); 程序运行后的输出结果是 ( A) 1, 1 ( B) 2, 2 ( C) 3, 3 ( D) 4, 4 24 要求以下程序的功能是计算 main() int n;float s; s=1.0; for(n=10;n 1;n-)
7、 s=s+1/n; pfintf(“%6.4fn“,s); 程序运行后输出结果错误,导致错误结果的程序行是 ( A) s=1.0; ( B) for(n=10;n 1;n-) ( C) s=s+1/n; ( D) printf(“%6.4fn“,8); 25 已定义 ch为字符型变量,以下赋值语句中错误的是 ( A) ch=; ( B) ch=62+3; ( C) ch=NULL; ( D) ch=xaa; 26 若已定义的函数有返回值,则以下关于该函数调用叙述中错误的是 ( A)函数调用可以作为独立的语句存在 ( B)函数调用可以作为一个函数的实参 ( C)函数调用可以出现在表达式中 ( D
8、)函数调用可以作为一个函数的形参 27 有以下函数定义: void fun(int 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); 28 有以下程序 void fun(char *a, char *b) a=b; ( *a)+; main() char cl=A,c2=a,*p1,*p2; p1=p2: fun(p1,p2); printf(“%c%cn“,c1,c2);
9、程序运行后的输出结果是 ( A) Ab ( B) aa ( C) Aa ( D) Bb 29 若程序中已包含头文件 stdio.h,以下选项中,正确运用指针变量的程序段是 ( A) int *i=NULL; scanf(“%d“,i; ( B) float *f=NULL; *f=10.5; ( C) char t=m, *c= L=0; 30 有以下程序 #include stdio.h main() printf(“%dn“, NULL); 程序运行后的输出结果是 ( A) 0 ( B) 1 ( C) -1 ( D) NULL没定义,出错 31 已定义 c为字符型变量,则下列语句中正确的是
10、 ( A) C=97; ( B) C=“97“; ( C) c=97; ( D) c=“a“; 32 以下不能正确定义二维数组的选项是 ( A) int a22=1,2; ( B) int a2=1,2,3,4; ( C) int a22=1,2,3; ( D) inta2=1,2,3,4; 33 以下选项中不能正确把 c1定义成结构体变量的是 ( A) typedef struct int red; int green; int blue; COLOR; COLOR cl; ( B) struct color cl int red; int green; int blue; ; ( C) s
11、truet color int red; int green; int blue; c1; ( D) struct int red; int green; int blue; cl; 34 以下能正确定义一维数组的选项是 ( A) int num; ( B) #define N 100 int numN; ( C) int num0 100; ( D) int N=100; int numN; 35 下列选项中正确的语句组是 ( A) char s8;s=“Beijing“; ( B) char*s;s=“Beijing“; ( C) char s8;s=“Beijing“; ( D) cha
12、r*s;s=“Beijing“; 36 已定义以下函数 fun(int *p) return *p; 该函数的返回值是 ( A)不确定的值 ( B)形参 p中存放的值 ( C)形参 p所指存储单元中的值 ( D)形参 p的地址值 37 下列函数定义中,会出现编译错误的是 ( A) max(int x,int y,int*z) *z=x y?xy; ( B) int max(int x,y) int z; z=x y?xy; return z; ( C) max(int x,int y) int z; z=x y?xy;return(z); ( D) int max(int x,int y) r
13、eturn(x y?xy); 38 有以下程序 #include stdio.h #define F(X,Y)(X)*(Y) main() int a=3,b=4; printf(“%dn“,F(a+, b+); 程序运行后的输出结果是 ( A) 12 ( B) 15 ( C) 16 ( D) 20 39 有以下程序 fun(int a,int b) if(a b) return(a) ; else return(b) ; main() int x=3,y=8,z=6,r; r=fun(fun(x,y),2*z); Printf(“%dn“,r); 程序运行后的输出结果是 ( A) 3 ( B
14、) 6 ( C) 8 ( D) 12 40 若有定义: iht*p3;,则以下叙述中正确的是 ( A)定义了一个基类型为 int的指针变量 p,该变量具有三个指针 ( B)定义了一个指针数组 p,该数组含有三个元素,每个元素都是基类型为 int的指针 ( C)定义了一个名 为 *p的整型数组,该数组含有三个 int类型元素 ( D)定义了一个可指向一维数组的指针变量 p,所指一维数组应具有三个 int类型元素 41 以下程序中函数 scmp的功能是返回形参指针 s1和 s2所指字符串中较小字符串的首地址 #include stdio.h #include string.h char *scmp
15、(char *s1,char *s2) if(strcmp(s1,s2) 0) return(s1); else return(s2); main() int i;char string20,str320; for(i=0;i 3;i+)gets(stri); strcpy(string, scmp(str0,str1); /*库函数 strcpy对字符串进行复制 */ strcpy(string, scmp(string, str2); printf(“%sn“,string); 若运行时依次输入: abcd、 abba和 abc三个字符串,则输出结果为 ( A) abcd ( B) adb
16、a ( C) abc ( D) abca 42 有以下程序 struct s int x,y;data2=10,100,20,200; main() struct s*p=data; printf(“%dn“, +(p- x); 程序运行后的输出结果是 ( A) 10 ( B) 11 ( C) 20 ( D) 21 43 有以下程序段 main() int a=5,*b,*c; c=b=p2+; 函数的功能是 ( A)将 p1所指字符串复制到 p2所指内存空间 ( B)将 P1所指字符串的地址赋给指针 p2 ( C)对 p1和 p2两个指针所指字符串进行比较 ( D)检查 P1和 p2两个指针
17、所指字符串中是否有 0 46 有以下程序 main() int x=3, y=2, z=1; printf(“%dn“,x/yi9;i+)pi=i+1; printf(“%dn“,“a12); 程序运行后的输出结果是 ( A) 3 ( B) 6 ( C) 9 ( D) 2 50 有以下结构体说明和变量定义,如图所示,指针 p、 q、 r分别指向一个链表中的三个连续结点 。 struct node int data; tract node * next; *p, *q, *r;现要将 q和 r所指结点的先后位置交换,同时要保持链表的连续,以下错误的程序段是 ( A) r- next=q; q-
18、next=r- next; p- next=r; ( B) q- next=r- next; p-next=r; r- next=q; ( C) p- next=r; q- next=r- next; r- next=q; ( D) q- next=r- next; r- next=q; P- next=r; 51 算法的复杂度主要包括【 】复杂度和空间复杂度。 52 数据的【 】结构在计算机存储空间中的存放形式称为数据的存储结构或物理结构。 53 对于软件测试,从是否需要执行被测软件的角度,可以分为静态测试和动态测试。代码检查属于【 】测试。 54 数据库的设计通常可以分为 4个步骤:需求分
19、析、概念设计、【 】和物理设计。 55 一个项目具有一个项目主管,一个项目主管可管理多个项目,则实体 “项目主管 ”与实体 “项目 ”的联系属于【 】。 56 以下程序运行后的输出结果是【 】。 main() int x=10, y=20, t=0; if(x=y)t=x; x=Y; Y=t; printf(“%d, %dn”, x, y); 57 以下程序运行后的输出结果是【 】。 main() int x=15; while(x 10&x 50) x+; if(x/3)x+; break; else continue; printf(“%dn”, x); 58 有以下程序: #includ
20、e stclio h main() char c; while(c=getchar()!=?)putchar(-c); 程序运行时,如果从键盘输入: Y?N?回车,则输出结果为【 】。 59 以下程序运行后的输出结果是【 】。 void fun(int x, int y) x=x+y; Y=x-y; x=x-y; printf(“%d, %d”, x, y); main() int x=2, y=3; fun(x, y); printf(“%d, %dn”, x, y); 60 以下函数的功能是计算 请填空。 double fun(int n) double s=0.0, fac=1.0; i
21、nt i; for(i=1; i =n; i+) fac=fac 【 】; s=s+fac; return s; 61 下面程序的运行结果是:【 】。 #define N 10 #define s(x)x*x #define f(x)(x*x) main() int i1, i2; i1=1000/s(N); i2=1000/f(N); printf(“%d%dn”, i1, i2); 62 下面程序的运行结果是:【 】。 void swap(int *a, int*b) int *t; t=a; a=b; b=t; main() intx=3, y=5, *p=&x, *q=&y; swap
22、(p, q); printf(“%d%dn”, *p, *q); 63 下面程序的运行结果是:【 】。 typedef union student char name10; long sno; char sex; float score4; STU; main() STU a5; Printf(“%dn”, sizeof(a); 64 若 fp已正确定义为一个文件指针, d1 dat为二进制文件,请填空,以便为“读 ”而 打开此文件: fp=fopen ( 【 】 ); 65 设有定义: int n, *k=&n;以下语句将利用指针变量 k读写变量 n中的内容,请将语句补充完整。 scanf(
23、“%d”, 【 】 ); printf(“%dn”, 【 】 ); 66 fun函数的功能是:首先对 a所指的 N行 N列的矩阵,找出各行中的最大的数,再求这 N个最大值中的最小的那个数作为函数值返回。请填空。 #include stdio h #define N 100 int fun(int(*a)N) int row, col, max, min; for(row=0; row N; row+) for(max=arow0, col=1; col N; col+) if( 【 】 )max=arowcol; if(row=0)min=max; else if( 【 】 )min=max;
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 语言 笔试 模拟 85 答案 解析 DOC
