[计算机类试卷]国家二级(C语言)笔试模拟试卷120及答案与解析.doc
《[计算机类试卷]国家二级(C语言)笔试模拟试卷120及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级(C语言)笔试模拟试卷120及答案与解析.doc(24页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级( C语言)笔试模拟试卷 120及答案与解析 1 下列选项中,不是一个算法的基本特征的是 ( )。 ( A)完整性 ( B)可行性 ( C)有穷性 ( D)拥有足够的情报 2 结构化分析方法是面向 ( )的自顶向下、逐步求精进行需求分析的方法。 ( A)对象 ( B)数据结构 ( C)数据流 ( D)目标 3 下列工具中为需求分析常用工具的是 ( )。 ( A) PAD ( B) PFD ( C) N-S ( D) DFD 4 对线性表进行二分法检索,其前提条件是 ( )。 ( A)线性表以顺序方式存储,并按关键码值排好序 ( B)线性表以顺序方式存储,并按关键码的检索频率排好序 (
2、C)线性表以链式方式存储,并按关键码值排好序 ( D)线性表以链式方式存储,并按关键码的检索频率排好序 5 下列选项中不属于结构化程序设计方法的是 ( )。 ( A)自顶向下 ( B)逐步求精 ( C)模块化 ( D)可复用 6 关于结构化程序设计原则和方法描述错误的是 ( )。 ( A)选用的结构只准许有一个入口和一个出口 ( B)复杂结构应该用嵌套的基本控制结构进行组合嵌套来实现 ( C)不允许使用 GOTO语句 ( D)语言中所没有的控制结构,应该采用前后一致的方法来模拟 7 软件需求分析阶段的工作,可以分为 4个方面:需求获取、需求分析、编写需求规格说明书以及 ( )。 ( A)阶段性
3、报告 ( B)需求评审 ( C)总结 ( D)都不正确 8 下列对于软件测试的描述中正确的是 ( )。 ( A)软件测试的目的是证明程序是否正确 ( B)软件测试的目的是使程序运行结果正确 ( C)软件测试的目的是尽可能多地发现程序中的错误 ( D)软件测试的目的是使程序符合结构化原则 9 用链表表示线性表的优点是 ( )。 ( A)便于随机存取 ( B)花费的存储空间较顺序存储少 ( C)便于插入和删除操作 ( D)数据元素的物理顺序和逻辑顺序相同 10 在数据库设计中,将 E-R图转换为关系模式的过程属于 ( )。 ( A)需求分析阶段 ( B)逻辑设计阶段 ( C)概念设计阶段 ( D)
4、物理设计阶段 11 下列说法正确的是 ( )。 ( A)在 C程序中, main()函数必须位于程序的最前面 ( B)在 C程序中,一条语句只能写一行而不能写多行 ( C) C程序是以行 为基本单位的 ( D) C语言本身没有输入输出语句 12 设在 C语言中, float类型数据占 4个字节,则 double类型数据占 ( )个字节。 ( A) 1 ( B) 2 ( C) 8 ( D) 4 13 下列程序的运行结果是 ( )。 int y=5, x=14; y=(x=3* y,x+1), x-1); printf(“x=%d, y=%d“, x, y); ( A) x=27, y=27 (
5、B) x=12, y=13 ( C) x=15, y=14 ( D) x=y=27 14 设 int x=1, y=1;表达式 (!x|-y)的值是 ( )。 ( A) 0 ( B) 1 ( C) 2 ( D) -1 15 下列程序输出的结果是 ( )。 main() int a; a=-4+4*5-6;printf(“%d”, a); a=4+4%5-6; printf(“%d”, a); a=-3+4%6/5;printf(“%d”, a); a=(7+6)%5/2; printf(“%d”, a); ( A) 10 2-3 1 ( B) 10-2 2 1 ( C) 11-22 1 ( D
6、) 10 2 2 1 16 若有下列定义和语句: int u=011, v=Ox11,w=11; printf(“%o, %x, %dn”,u, v, w); 则输出结果是 ( )。 ( A) 9, 17, 11 ( B) 9, 11, 11 ( C) 11, 11, 11 ( D) 11, 17, 11 17 若有下列定义 (设 int类型变量占 2个字节 ): int i=8, j=9; 则下列语句: printf(“i=%d, j=%dn”, i, j); 输出的结果是 ( )。 ( A) i=8, j=9 ( B) i=%d, j=%d ( C) i=%8, j=%9 ( D) 8,
7、9 18 为了避免在嵌套的条件语句 if else中产生二义性, C语言规定, else子句总是与( )配对。 ( A)缩排位置相同 if ( B)其前面最近的 if ( C)其后面最近的 if ( D)同一行上的 if 19 下列程序的输出结果是 ( )。 main() char a7=“a00a00“; int i, j; i=sizeof(a); j=strlen(a); printf(“%d %dn“,i, j); ( A) 2 2 ( B) 7 6 ( C) 7 2 ( D) 6 2 20 下列程序的运行结果是 ( )。 #include stdio h main() int a=0
8、,b=4, c=0, d=10, x; if(a) d=d-10; else if(!b) if(!c) x=15; else x=25; printf(“%dn“, d); ( A) 5 ( B) 3 ( C) 20 ( D) 10 21 下列程序的输出结果是 ( )。 int f1(int x,int y)return x y?x:y; int f2(int x,int y)return x y?y:x; main() int a=4,b=3,e=5,d=2,e,f,g; e=f2(f1(a,b),f1(e,d); f=f1(f2(a,b),f2(e,d); g=a+b+c+d-e-f;
9、printf(“%d,%d,%dn“,e,f,g); ( A) 4,3,7 ( B) 3,4,7 ( C) 5,2,7 ( D) 2,5,7 22 设有程序段: int k=12; while(k=1)k=k-1; 则下列描述中正确的是 ( )。 ( A) while循环执行 10次 ( B)循环是无限循环 ( C)循环体语句一次也不执行 ( D)循环体语句执行一次 23 在执行完下列的 C语句段之后,则 B的值是 ( )。 char a=A; int b; B=(34 ( A) 0 ( B) 1 ( C) TRUE ( D) FALSE 24 有下列函数定义: fun(float h) pr
10、intf(“%f,%fn“,h,h*h); 该函数的类型是( )。 ( A) int类型 ( B) float类型 ( C) void类型 ( D)函数无类型说明,定义有错 25 下列程序中函数 reverse()的功能是将 a所指数组中的内容进行逆置。 #include stdio.h void reverse(int a,int n) int i,t; for(i=0;i n/2;i+) t=ai;ai=an-1-i;an-1-i=t;) main() int b10=1,2,3,4,5,6,7,8,9,10;int i,s=0; reverse(b,10); for(i=0;i 3;i+
11、)s+=bi; printf(“%dn“,s); 程序运行后的输出结果是 ( )。 ( A) 27 ( B) 6 ( C) 25 ( D) 30 26 语句 int(*ptr)()的含义是 ( )。 ( A) ptr是一个返回值是 int的函数 ( B) ptr是指向 int型数据的指针变量 ( C) ptr是指向函数的指针,该函数返回一个 int型数据 ( D) ptr是一个函数名,该函数的返回值是指向 int型数据的指针 27 设有定义: int a=2,b=3,c=4;,则下列选项中值为 0的表达式是 ( )。 ( A) (!a=1) scanf(“%d“, dos=s+t;t=t-2;
12、while(t!=n); 为使此程序段不陷入死循环,从键盘输入的数据应该 是 ( )。 ( A)任意正奇数 ( B)任意负偶数 ( C)任意正偶数 ( D)任意负奇数 29 下列程序的输出结果是 ( )。 #include stdio.h void main() int b6=2,4,6,8,10,12; int *p=b,*q= printf(“%d“,*(p+); printf(“%d,“,*q); ( A) 4,4 ( B) 2,2 ( C) 4,5 ( D) 2,4 30 若有说明语句: double*p,a;则能通过 scanf语句正确给输入项读入数据的程序段是 ( )。 ( A)
13、*p=scanf(“%1f“,p); ( B) *p=scanf(“%f“,p); ( C) p=scanf(“%1f“,*p); ( D) p=scanf(“%1f“,p); 31 下列程序的输出结果是 ( )。 #include stdio.h main() char ch25=“1234“,“5678“,*p2; int i,j,s=0; for(i=0;i 2;i+) pi=chi; for(i=0;i 2;i+) for(j=0;pij 0,j+=2) s=pij-0; printf(“%d“,s);) ( A) 6357 ( B) 6135 ( C) 1357 ( D) 69135
14、7 32 下列程序的输 出结果是 ( )。 #include stdio.h main() int a23=1,2,3,4,5,6),(*p)3,i; p=a; for(i=0;i 3;i+) if(i 2) p1i=p1i-1; else p1i=1; printf(“%dn“,a01+a11+a12); ( A) 8 ( B) 7 ( C) 12 ( D) 9 33 字符串 “ABCDEF“的长度是 ( )。 ( A) 15 ( B) 10 ( C) 7 ( D) 8 34 若有下列说明,则 ( )不是对 strcpy库函数的正确的调用。 strcpy库函数用于复制一个字符串: char*
15、str1=“abed“,str210,*str3=“hijklmn“,*str42,*str5=“aaaa“; ( A) strcpy(str2,str1) ( B) strcpy(str3,str1) ( C) strcpy(str4,str1) ( D) strcpy(str5,str1) 35 下列程序段的输出结果为 ( )。 #include stdio.h main() static char a=“language“; char *p; p=a; for(p=a;p a+8;p+=2) putchar(*p); ( A) language ( B) lnug ( C)有语法错误 (
16、 D) lang 36 执行下列程序后,输出的结果是 ( )。 #include stdio.h #define S(X)X*X void main() int a=9,k=3,m=2; a/=S(k+m)/S(k+m); printf(“%d“,a); ( A) 1 ( B) 4 ( C) 9 ( D) 0 37 已知有结构体: struct sk int a; float b; data,*p; 若有 p= ( C) p- data.a ( D) p.data.a 38 设有下列说明语句: Strcut Str int x;float y;char z;st; 则下列的叙述中不正确的是 (
17、 )。 ( A) struct是结构体类型的关键字 ( B) st是结构体类型名 ( C) x、 y、 z都是结构体成员名 ( D) struct str是结构体类型名 39 设 x=015,则 x=x017的值是 ( )。 ( A) 1111 ( B) 11111101 ( C) 10 ( D) 11000000 40 若 fp是指向某文件的指针,且尚未读到文件末尾,则函数 feof(fp)的返回值是( )。 ( A) EOF ( B) -1 ( C)非零值 ( D) 0 41 在算法的 4个特性中,算法必须能在执行有限个步骤之后终止指的是算法的_特性。 42 按照逻辑结构分类,结构可以分为
18、线性结构和非线性 结构,栈属于 _。 43 栈中允许进行插入和删除的一端叫做 _。 44 在面向对象程序设计中,从外面看只能看到对象有外部特征,而不知道也无须知道数据的具体结构以及实现操作的算法,这称为对象的 _。 45 软件工程研究的内容主要包括: _技术和软件工程管理。 46 表示 “整数 x的绝对值大于 5”时值为 “假 ”的 C语言表达式是 _。 47 设 y为 int型变量,请写出描述 “y是偶数 ”的表达式 _。 48 下列程序的运行结果是 _。 main() int x=1,y=2,z=3; printf(“%d,“,x y?y:x); printf(“%d,“,z y?x+:y
19、+); printf(“%d,%d“,x,y); 49 下列程序段中循环体的执行次数是 _。 a=15; b=0; dob+=2;a-=2+b;while(a =0); 50 语句 “int(*ptr)();”的含义是 _是指向函数的指针,该函数返回一个 int型数据。 51 下列程序的输出结果是 _。 #include stdio.h int t(int x,int y,int cp,int dp) cp=x*x+y*y; dp=x*x-y*y; main() int a=1,b=8,c=7,d=9; t(a,b,c,d); printf(“%d %dn“,c,d); 52 13在内存中占
20、1个字节, “12“在内存中占 _个字节。 53 #define命令出现在程序中函数的外面,宏名的有效范围为 _。 54 下列程序段的运行结果是 _。 char str=“ABCD“,*p=str; printf(“%dn“,*(p+3); 55 下列程序中的数组 a包括 10个整数元素,分别将前项和后项之和存入数组 b,并按每行 4个元素输出数组 b。请填空。 #include stdio.h main() int a10,b10,i; for(i=0;i 10;i+) scanf(“%d“, for(i=0;i 9;i+) _; for(i=0;i 9;i+) if(i%4=0)print
21、f(“n“); printf(“%3d“,bi); 国家二级( C语言)笔试模拟试卷 120答案与解析 1 【正确答案】 A 【试题解析】 作为一个算法,一般应该具有下列 4个特征: 可行性,即考虑到实际的条件能够达到一个满意的结果; 确定性,算法中的第一个步骤都必须是有明确定义的; 有穷性,一个算法必须在有限的时间内做完; 拥有足够的情报。 2 【正确答案】 C 【试题解析】 结构化分析方法是面向数据流进行需求分析的方法,采用自顶向下、逐层分解,建立系统的处理流程,以数据流图和数据字典为主要工具,建立系统的逻辑模型。 3 【正确答案】 D 【试题解析】 需求分析常用的工具有数据流图 (DFD
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 语言 笔试 模拟 120 答案 解析 DOC
