ImageVerifierCode 换一换
格式:DOCX , 页数:70 ,大小:816.17KB ,
资源ID:4421373      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4421373.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(国家计算机二级c语言历年真题及答案.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

国家计算机二级c语言历年真题及答案.docx

1、国家计算机二级c语言历年真题及答案2012年3月全国计算机等级考试二级C语言真题(考试时间90分钟,满分100分)一、选择题1、 下列叙述中正确的是:A、循环队列是队列的一种顺序存储结构B、循环队列是队列的一种链式存储结构C、循环队列是非线性结构 D、循环队列是一种逻辑结构2、 下列叙述中正确的是A、栈是一种先进先出的线性表 B、队列是一种后进先出的线性表C、栈和队列都是非线性结构 D、以上三种说法都不对3、 一棵二叉树共有25个节点,其中5个时子节点,那么度为1的节点数为A、4 B、6 C、10 D、164、 在下列模式中,能够给出数据库物理存储结构与物理存取方法的是A、内模式 B、外模式

2、C、概念模式 D、逻辑模式5、 在满足实体完整性约束的条件下A、一个关系中可以没有候选关键词B、一个关系中只能有一个候选关键词C、一个关系中必须有多个候选关键词D、一个关系中应该有一个或者多个候选关键词6、 有三个关系R、S和T如下:R A B Ca 1 2b 2 1c 3 1 则由关系R和S得到关系T的操作是A、自然连接 B、并 C、差 D、交7、 软件生命周期中的活动不包括A、软件维护 B、市场调研 C、软件测试 D、需求分析8、 下面不属于需求分析阶段任务的是A、确定软件系统的功能需求 B、确定软件系统的系统的系能需求B、制定软件集成测试计划 D、需求规格说明书审评9、 在黑盒测试方式中

3、,设计测试用例的主要根据是A、程序外部功能 B、程序内部逻辑C、程序数据结构 D、程序流程图10、 在软件设计中不使用的工具是A、系统结构图 B、程序流程图 C、PAD图 D、数据流图(DFD图)11、针对简单程序设计,以下叙述的实施步骤正确的是A、确定算法和数据结构、编码、调试、整理文档B、编码、确定算法和数据结构、调试、整理文档C、整理文档、确定算法和数据结构、编码、调试D、确定算法和数据结构、调试、编码、整理文档12、关于C语言中数的表示,以下叙述正确的是A、只有整型数在允许范围内能精确无误的表示,实型数会有误差B、只要在在允许范围内整型和实型都能精确表示C、只有实型数在允许范围内能精确

4、无误的表示,整型数会有误差D、只有八进制表示的数在不会有误差13、以下关于算法叙述错误的是A、算法可以用伪代码、流程图等多种形式来描述B、一个正确的算法必须有输入C、一个正确的算法必须有输出D、用流程图可以描述的算法可以用任何一种计算机高级语言编写成程序代码14、以下叙述错误的是A、一个C程序可以包含多个不同名的函数B、一个C程序只能有一个主函数C、C程序在书写时,有严格的缩进要求,否则不能编译通过D、C程序的主函数必须用main作为函数名15、设有以下语句char ch1,ch2, scanf(”%c%c”,&ch1,&ch2);若要为变量ch1和ch2分别输入字符A和B,正确的输入形式应该

5、是A、A和B之间用逗号间隔 B、A和B之间不能有任何间隔符C、A和B之间可以用回车间隔 D、A和B之间用空格间隔16、以下选项中非法的字符常量是A、102 B、65 C、xff D、01917、有以下程序#include Main()Int A=0,B=0,C=0;C=(A-=A-5);(A=B,B+=4);Printf(“%d, %d, %dn”,A,B,C)程序运行后输出的结果是A 0,4,5 B 4,4,5 C 4,4,4 D 0,0,018、设变量均已正确定义并且赋值,以下与其他三组输出结构不同的一组语句是A、x+; printf(“%dn”,x); B、n=+x; printf(“%

6、dn”,n);C、+x; printf(“%dn”,x); D、n=x+; printf(“%dn”,n);19、以下选项中,能表示逻辑值“假”的是A 1 B 0.000001 C 0 D 100.020、有以下程序#include Main() int a;Scanf(“%d”,&a);If(a+9) printf(“%dn”,a);Else printf(“%dn”,a-);程序运行时键盘输入9,则输出的结构是A、10 B 11 C 9 D 821、有以下程序#include Main()int s=0,n; For (n=0;n3;n+)switch(s) case 0;Case 1;s

7、+=1;Case 2;s+=2;break;Case 3;s+3;Case 4;s+=4;printf(“%dn”,s);程序运行后的结果是A 1,2,4 B 1,3,6 C 3,10,14 D 3,6,1022、若k是int类型变量,且有以下for语句For(k=-1;k0;k+) printf(*n”);下面关于语句执行情况的叙述中正确的是A、循环体执行一次 B、循环体执行两次C、循环体一次也不执行 D、构成无限循环23、有以下程序#include Main()char A,B,C;B=1;C=AFor(A=0;A6;A+)if(A%2) putchar(B+A);Else putchar

8、(C+A);程序运行后输出的结果是A 1B3D5F B ABCDFE C A2C4E6 D 12345624、设有如下定义语句Int m =2,4,6,8,*k=m;以下选项中,表达式的值为6的是A *(k+2) B k+2 C *k+2 D *k+=225、fun函数的功能是:通过键盘输入给x所指的整型数组所有元素赋值。在下列划线处应该填写的是#include #define N 5void fun(int xN)int m;For(m=N-1;m0;m-) scanf(“%dn”, );A &x+m B &xm+1 C x+(m+) D x+m26、若有函数Viod fun(double

9、a, int *n)以下叙述中正确的是A、 调用fun函数时只有数组执行按值传送,其他实参和形参之间执行按地址传送B、 形参a和n都是指针变量C、 形参a是一个数组名,n是指针变量D、 调用fun函数时将把double型实参数组元素一一对应地传送给形参a数组27、有以下程序#include Main()int a,b,k,m,*p1,*p2;k=1,m=8;p1=&k,p2=&m;a=/*p1-m; b=*p1+*p2+6;printf(“%d ”,a); printf(“%dn”,b);编译时编译器提示错误信息,你认为出错的语句是A、a=/*p1-m B、b=*p1+*p2+6C、k=1,m

10、=8; D、p1=&k,p2=&m;28、以下选项中有语法错误的是A char *str =“guest”; B、char str10 =“guest”;C、char *str3 *str1=“guest”; D、char str310;str1=“guest”;29、avg函数的功能是求整型数组中的前若干个元素的平均值,设数组元素个数最多不超过10,则下列函数说明语句错误的是A、int avg(int *a,int n); B、int avg(int a10,int n);C、int avg(int a,int n) ; D、int avg(int a,int n);30、有以下函数 #in

11、clude #include main() printf(“%dn”,strren”ATSn0121”) );程序运行后的输出结果是A 3 B 8 C 4 D 931、有以下函数 #include main() char a20,b20,c20;scanf(”%s%s”,a,b);get(c);printf(”%s%sn”,a,b,c);程序运行时从第一行开始输入 this is a cat!,则输出结果是A thisisacat! B this is a C thisis a cat! D thisisa cat!32、有以下函数 #include viod fun(char c)if(cx

12、) fun(c-1); printf (“%c”,c);main()fun”z”;程序运行输出结果是A xyz B wxyz C zyxw D zyx33、有以下函数 #include viod func(int n)int i;for(i=0;i=n;i+) printf(“*”); printf(“#”);main() func(3); printf(“?”); func(4); printf(“n”); 程序运行输出结果是 A *#?*# B *#?*# C *#?*# D *#?*#34、有以下函数 #include viod fun(int *s)staic int j=0;do s

13、j=sj+sj+1; wihle(+j2);main()int k,a10=1,2,3,4,5;for(K+1;k3;k+) fun(a); for(K+1;k5;k+) printf(“%d”,ak);printf(“n”);程序运行输出结果是A 12345 B 23445 C 34756 D 3574535、有以下函数 #include #define S(x) (x)*x*2main()int k=5,j=2;printf(“%d,”,Sk+j); printf(“%dn”,S(k-j);程序运行输出结果是A 98,18 B 39,11 C39,18 D98,1136、有以下函数#inc

14、lude Viod exch(int t )t0=t5;int x10=1,2,3,4,5,6,7,8,9,10,i=0;While(i=4) exch(&xi)i+;for(i=0;i color C std- color D (*ptr) .color 38、有以下函数#include struct stuint mun; char name10; int age;viod fun(struct stu *p) printf(“%sn”,p-name);mian() struct stu x3=01,”zhang”,20,02,”wang”,19,03,”zhao”,18;fun(x+2)

15、;程序运行输出结果是A zhang B zhao C wang D 1939、有以下函数#include mian()int a=12,c;c=(a2)1;printf(“%dn”,c):程序运行输出结果是A 3 B 50 C 2 D 9640、以下函数不能用于向文件写入数据的是A ftell B fwrite C fputc D fprintf二、 填空题1、将长度为n的顺序存储在线性表中删除一个元素,最坏情况下需要移动表中的元素个数为( )。2、设循环队列的存储空间为Q(1:3),初始状态为front=rear=30。现经过一系列入队与退队运算后,front=16,rear=15,则循环队

16、列中有( )个元素。3、数据库管理系统提供的数据语言中,负责数据的增、删、改和查询的是( )。4、在将E-R图转换到关系模式时,实体和联系都可以表示成( )。5、常见的软件工程方法有结构化方法和面向对象方法,类、继承以及多态性等概念属于( )。6、设变量a和b已定义为int类型,若要通过scanf(”a=%d,b=%d”,&a,&b);语句分别给a和b输入1和2,则正确的数据输入内容是( )。7、以下程序的输出结果是( )。#include mian() int a=37;a+=a%=9; printf(“%dn”,a);8、设a、b、c都是整型变量,如果a的值为1,b的值为2,则执行c=a+

17、|b+;语句后,变量b的值是( ).9、有以下程序段s=1.0;for(k=1,k=n;k+) s=s+1.0(k*(k+1);printf(“%fn”,s);请填空,使以下程序段的功能与上面的程序段完全相同。s=1.0; k=1;while( ) s=s+1.0(k*(k+1); k=k+1;printf(“%fn”,s);10、以下程序段的输出结果是( )#include mian() char a,b; for(a=0;a20;a+=7) b=a%10; putchar(b+0); 11、以下程序段的输出结果是( )#include mian() char *ch4=“red”,”gre

18、en”,”blue”;Int i=0;While(chi); putchar(chi0; i+; 12、 有以下程序#include mian()int arr=1,3,5,7,2,4,6,8, i, start;Scanf(“%d”, &start);For(i=0,i3,i+)printf(“%d”,arr(start+i)%8);若在程序运行时输入整数10 ,则输出结果为( )。13、 以下程序的功能是输出a数组中的所有字符串,请填空#include mian()char *a=“ABC”,”DEFGH”,”IJ”,”KLMNOP”;Int i=0;For(;i4;i+) printf(

19、“%sn”, );14、以下程序的输出结果是( )。#include #include #include mian() char *p, *q, *r;p=q=r=(char *)malloc(sizeof(char)*20);strcpy(p,”attaboy,welcome!”);printf(“%c%c%cn”,p11, q3, r4);free(p);15、设文件test.txt中原已写入字符串Begin,执行以下程序后,文件中的内容为( )。#include mian() file *fp; fp=fopen(“test.txt”,”w+”); fputs(“test”,fp); f

20、close(fp);2012年3月全国计算机等级考试二级C语言真题标准答案一、选择题1-5、ADDAD 6-10、CBCAD 11-15、ABBCB 16-20、DADCA 21-25、CACAD 26-30、CADCB 31-35、CADDC 36-40、DCBDA二、填空题1、n-1 2、29 3、数据操纵语言 4、关系5、面向对象方法 6、a=1,b=2 7、2 8、2 9、k=n 10、074 11、rgb 12、572 13、ai 14、cab 15、test2011年9月全国计算机等级考试二级笔试试卷C语言程序设计(考试时间90分钟,满分100分)一、选择题(1)-(10)、(21

21、)-(40)每题2分,(11)-(20)每题1分,共70分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。请将正确选项填涂在答题卡相应位置上答在试卷上不得分。(1)下列叙述中正确的是( )。A)算法就是程序 B)设计算法时只需要考虑数据结构的设计C)设计算法时只需要考虑结果的可靠性 D)以上三种说法都不对(2)下列关于线性链表的叙述中,正确的是( )。A)各数据结点的存储空间可以不连续,但它们的存储顺序与逻辑顺序必须一致B)各数据结点的存储顺序与逻辑顺序可以不一致,但它们的存储空间必须连续C)进行插入与删除时,不需要移动表中的元素D)以上三种说法都不对(3)下列关于二叉树的叙

22、述中,正确的是( )。A)叶子结点总是比度为2的结点少一个B)叶子结点总是比度为2的结点多一个c)叶子结点数是度为2的结点数的两倍D)度为2的结点数是度为1的结点数的两倍(4)软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软件的是( )。A)学生成绩管理系统 B)C语言编译程序C)UNIX操作系统 D)数据库管理系统(5)某系统总体结构图如下图所示:该系统总体结构图的深度是( )。A)7 B)6 C)3 D)2(6)程序调试的任务是( )。A)设计测试用例 B)验证程序的正确性 C)发现程序中的错误 D)诊断和改正程序中的错误(7)下列关于数据库设计的叙述中,正确的

23、是( )。A)在需求分析阶段建立数据字典 B)在概念设计阶段建立数据字典C)在逻辑设计阶段建立数据字典 D)在物理设计阶段建立数据字典(8)数据库系统的三级模式不包括( )。A)概念模式 B)内模式 C)外模式 D)数据模式(9)有三个关系R、S利T如下:则由关系R和s得到关系T的操作是( )。A)自然连接 B)差 C)交 D)并(10)下列选项中属于面向对象设计方法主要特征的是( )。A)继承 B)自顶向下 C)模块化 D)逐步求精(11)以下叙述中错误的是( )。A)C语言编写的函数源程序,其文件名后缀可以是CB)C语言编写的函数都可以作为一个独立的源程序文件C)C语言编写的每个函数都可以

24、进行独立的编译并执行D)一个C语言程序只能有一个主函数(12)以下选项中关于程序模块化的叙述错误的是( )。A)把程序分成若干相对独立的模块,可便于编码和调试B)把程序分成若干相对独立、功能单一的模块,可便于重复使用这些模块c)可采用自底向上、逐步细化的设计方法把若干独立模块组装成所要求的程序D)可采用自项向下、逐步细化的设计方法把若干独立模块组装成所要求的程序(13)以下选项中关于c语言常量的叙述错误的是( )。A)所谓常量,是指在程序运行过程中,其值不能被改变的量B)常量分为整型常量、实型常量、字符常量和字符串常量c)常量可分为数值型常量和非数值型常量D)经常被使用的变量可以定义成常量(1

25、4)若有定义语句:int a=10;double b=314;,则表达式A+a+b值的类型是( )。A)char B)int C)double D)float(15)若有定义语句:int x=12,3=8,z;,在其后执行语句z=09+x/y;,则Z的值为( )。A)19 B)1 C)2 D)24(16)若有定义:int a,b;,通过语句scanf(d;d,&a,&b);,能把整数3赋给变量a,5赋给变量b的输入数据是( )。A)3 5 B)3,5 C)3;5 D)35(17)若有定义语句:intk1=10,k2=20;,执行表达式(k1=k1k2)&(k2=k2k1)后,k1和k2的值分别

26、为( )。A)0和1 B)0和20 C)10和1 D)10和20(18)有以下程序 #include main() int a=1,b=0; if(-a) b+; else if(a=0)b+=2: else b+=3: printf(dn,b); ) 程序运行后的输出结果是( )。A)0 B)1 C)2 D)3(19)下列条件语句中,输出结果与其他语句不同的是( )。A)if(a)printf(d-n,x); else printf(dn,y);B)if(a0)printf(dn,y); else printf(dn,x);C)if(a!=0)p由tf(dn,x); else printf(

27、dn,y);D)if(a=0)printf(dn,x); else printf(dn,y);(20)有以下程序#includemain()int a=7;while(a-);printf(dn,a);)程序运行后的输出结果是( )。A)-1 B)0 C)1 D)7(21)以下不能输出字符A的语句是(注:字符A的ASCIl码值为65,字符a的ASCIl码值为97)A)printf(cn,a-32); B)printf(dn,A);c)printf(cn,65); D)print-f(cn,B-1);(22)有以下程序(注:字符a的ASCIl码值为97)#includemain()char*s=abe);doprintf(”d”,+s10);+s;)while(+s);)程序运行后的输出结果是( )。A)abc B)789 C)7890 D

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1