全国计算机等级考试二级笔试样卷C语言程序设计含答案_第1页
全国计算机等级考试二级笔试样卷C语言程序设计含答案_第2页
全国计算机等级考试二级笔试样卷C语言程序设计含答案_第3页
全国计算机等级考试二级笔试样卷C语言程序设计含答案_第4页
全国计算机等级考试二级笔试样卷C语言程序设计含答案_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、全国计算机等级考试二级笔试样卷C语言程序设计【打印】【字体:大中小】【关闭】、选择题(1)s(10)、(21)s(40)每题2分,(11)s(20)每题2分,共70分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。(1)下列选项中不符合良好程序设计风格的是A)源程序要文档化B)数据说明的次序要规范化C)避免滥用goto语句D)模块设计要保证图耦合、图内聚(2)从工程管理角度,软件设计一般分为两步完成,它们是A)概要设计与详细设计B)数据设计与接口设计C)软件结构设计与数据设计D)过程设计与数据设计(3)下列选项中不属于软件

2、生命周期开发阶段任务的是A)软件测试B)概要设计C)软件维护D)详细设计(4)在数据库系统中,用户所见的数据模式为A)概念模式B)外模式C内模式D)物理模式(5)数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和A)编码设计B)测试阶段C运行阶段D)物理设计(6)设有如下三个关系表STBCABC1313mF列操作中正确的是A)T=RASB)T二RUSC)T二RXSD)T=R/S(7)下列叙述中正确的是A) 一个算法的空间复杂度大,则其时间复杂度也必定大B) 一个算法的空间复杂度大,则其时间复杂度必定小C) 一个算法的时间复杂度大,则其空间复杂度必定小D)上述三种说法都不对(8)在长度为64

3、的有序线性表中进行顺序查找,最坏情况下需要比较的次数为A) 63B)64C6D)7(9)数据库技术的根本目标是要解决数据的A)存储问题B)共享问题C)安全问题D)保护问题(10)对下列二叉树回进行中序遍历的结果是A)ACBDFEGB)ACBDFGEC)ABDCGEFD)FCADBEG(11)下列叙述中错误的是A)一个C语言程序只能实现一种算法B) C程序可以由多个程序文件组成C) C程序可以由一个或多个函数组成D)一个C函数可以单独作为一个C程序文件存在(12)下列叙述中正确的是A)每个C程序文件中都必须要有一个main()函数B)在C程序中main()函数的位置是固定的C)C程序中所有函数之

4、间都可以相互调用,与函数所在位置无关D)在C程序的函数中不能定义另一个函数13)下列定义变量的语句中错误的是A)intint;B)doubleint;C)charFor;D)floatus$;(14)若变量x、y已正确定义并赋值,以下符合C语言语法的表达式是A)+x,y=x-B)x+1=yC)x=x+10=x+yD)double(x)/1015)以下关于逻辑运算符两侧运算对象的叙述中正确的是A)只能是整数。或1B)只能是整数0或非0整数O可以是结构体类型的数据D)可以是任意合法的表达式16)若有定义int x,y;并已正确给变量赋值,则以下选项中与表达式(x-y)?(x+):(y+)中的条件表

5、达式(x-y)等价的是A)(x-y>0)B)(x-y<0)C)(x-y<0|x-y>0)D)(x-y=A) 876 和 543.000000B)87 和 6.00000017)有以下程序main()intx,y,z;x=y=l;z=x+,y+,+y;printf(n%d,%d5%dnn,x,y5z);2C)2,3,1D) 2,2,1程序运行后的输出结果是A)2,3,3B)2,3,18)设有定义:inta;floatb;执行scanf(H%2d%fH5&a,&b);语句时,若从键盘输入876543.0V回车,a和b的值分别是C)87和543.000000D

6、)76和543.000000(19)有以下程序main()给a赋值给b赋值*/输出计算结果7inta=0,b=0;a=10;/*b=20;printf(Ma+b=%dnH,a+b);/*程序运行后的输出结果是A)a+b=10B)a+b=30C)30D)出错20)在嵌套使用if语句时,C语言规定else总是A)和之前与其具有相同缩进位置的if配对B)和之前与其最近的if配对C)和之前与其最近的且不带else的if配对D)和之前的第一个if配对21)下列叙述中正确的是A)break语句只能用于switch语句B)在switch语句中必须使用defaultC)break语句必须与switch语句中的

7、case配对使用D)在switch语句中,不一定使用break语句22)有以下程序main()intk=5;while(-k)printf(”d”,k-=3);printf(Hnn);执行后的输出结果是A)1B)2C)4D)死循环(23)有以下程序main()inti;for(i=1;i<=40;i+)if(i+%5=0)if(+i%8=0)printf(H%d”,i);)printf(HnH);执行后的输出结果是A)5B)24C)32D)4024)以下选项中,值为1的表达式是A) 1 OB ) 1 - '0'C)T-0D) 'O' - O(25)有以下程

8、序fun(intx,inty)return(x+y);main()inta=1,b=2,c=3,sum;sum=fun(a+,b+,a+b)5c+);printf(H%dnH,sum);执行后的输出结果是A)6B)708D)926)有以下程序main()chars="abcde”;s+=2;printf(H%dnH,sO);I执行后的结果是A)输出字符a的ASCII码B)输出字符c的ASCII码C)输出字符cD)程序出错(27)有以下程序fun(intx,inty)staticintm=0,i=2;i+=m+1;m=i+x+y;returnm;main()intj=1,m=1,k;k

9、=fun(j,m);printf(n%d,H,k);k=fun(j,m);printf(n%dnn5k);>执行后的输出结果是D) 11,5A)5,5B)5,11011,11(28)有以下程序fun(intx)intp;if(x=0|x=1)return(3);p=x-fun(x-2);returnp;main()printf(n%dnH,fun(7);执行后的输出结果是A)7B)3C)2D)0(29)在16位编译系统上,若有定义inta=10,20,30,*p=&a;,当执行p+;后,下列说法错误的是A)p向高地址移了一个字节B)p向高地址移了一个存储单元C)p向高地址移了两个

10、字节D)p与a+1等价(30)有以下程序main()inta=1,b=3,c=5;int*p1=&a,*p2=&b,*p=&c;*p=*p1*(*p2);printf(n%dnH,c);执行后的输出结果是A)1B) 2C) 3D) 4(31)元素的表达式是A) *(*w+3)A)int fun(double x, int *n);B) intfun(double , int);Oint fun(double *x, int n);D) int fun(double *, int *);若有定义:intw35;,则以下不能正确表示该数组D)*(&w00+1)(32

11、)若有以下函数首部intfun(doublex10,int*n)则下面针对此函数的函数声明语句中正确的是(33)有以下程序voidchange(intk)k0=k5;main()intx1。=。2,345,6,7,8,9,10,n=0;while(n<=4)change(&xn);n+;for(n=0;n<5;n+)printf(n%dH,xn);printf(Hnn);程序运行后输出的结果是C) 1 2345D) 62345A)678910B)13579(34)有以下程序main()intx32=0,i;for(i=0;i<3;i+)scanf(H%dH,xi);p

12、rintf(H%3d%3d%3dnn,x005x013x10);若运行时输入:246V回车面则输出结果为A)200B)2040240D)246(35)有以下程序intadd(inta,intb)return(a+b);main()intk,(*f)()5a=5,b=10;f=add;I则以下函数调用语句错误的是A)k=(*f)(a,b);B)k=add(a,b);C)k=*f(a,b);D)k=f(a,b);36)有以下程序#includemain(intargc,char*argv)inti=1,n=0;while(iprintf(H%dnH,n);I若运行时输入命令行:D)11该程序生成的

13、可执行文件名为:proc.exeproc1234567则程序的输出结果是A)3B)5C)7(37)有以下程序# include# defineN5# defineMlN+1#definef(x)(x*M)main()inti1,i2;11 =f(2);12 =f(1+1);printf(H%d%dnH,i1,i2);I程序的运行结果是D)12 7A)1212B)117C)111138)有以下结构体说明、变量定义和赋值语句structSTDcharname10;intage;charsex;s5,*ps;ps=&sO;则以下scant函数调用语句中错误引用结构体变量成员的是A) scan

14、f(n%sH,sO.name);B) scanf(n%dH,&sO.age);C) scant (H%cH,&(ps->sex);D ) scanf(n%dH,ps->age);39)若有以下定义和语句union dataint i; char c; float f; x;inty;则以下语句正确的是A) x=10.5;B) x.c=101;C)y=x;D) printf(H%dnH,x);40)有以下程序#includemain()FILE*fp;inti;charch=nabcdH,t;fp=fopen(nabc.datH,nwb+H);for(i=0;i<

15、;4;i+)fwrite(&chi,1,1,fp);fseek(fp5-2L,SEEK_END);fread(&t,131,fp);fclose(fp);printf(n%cnn3t);I程序执行后的输出结果是A)dB)cC)bD)a二'填空题(每空2分,共30分)请将每一个空的正确答案写在答题卡【1】至【15】序号的横线上,答在试卷上不得分下列软件系统结构图(3)(4)数据结构是(5)和非线性结构,带链的队列属于数据结构分为线性结构-5tn的宽度为(2)2£的任务是诊断和改正程序中的错误一个关系表的行称为【3】按“先进后出”原则组织数据的4(6)设有定义:f

16、loatx=123.4567;,则执行以下语句后的输出结果是prinnt)(x*100+0.5)/100.0);以下程序运行后的输出结果是 70main()intm=011,n=11;printf(n%d%dnn5+m,n+);(8)以下程序运行后的输出结果是81omain()intx,a=1,b=2,c=3,d=4;x=(ax=(xx=(d>x)?x:d;printf(n%dnn,x);)(9)以下程序,若运行时从键盘输入:18,11 v回车有,则程序的输出结果是9main()inta,b;printf(nEntera,b:H);scanf(,%d,%dn,&a5&b)

17、;while(a!=b)while(a>b)a-=b;while(b>a)b-=a;)printf(n%3d%3dnH,a3b);I135则输出5(10)以下程序的功能是:将输入的正整数按逆序输出。例如:若输入31o请填空。#includemain()intn,s;printf(nEnteranumber:");scanf(,%dH,&n);printf("Output:");dos=n%10;printf(”d”,s);10;)while(n!=0);printf(Hnn);(11)以下程序中,函数fun的功能是计算X2-2X+6,主函数中将

18、调用fun函数计算:2yA|=(X+8)-2(X+8)+62y2=sin(x)-2sin(x)+6请填空。#inelude"math.h"doublefun(doublex)return(x*x-2*x+6);main()doublex,y1,y2;printf(nEnterx:H);seanf(n%lfH,&x);y1=fun(11);y2=fun(12);printf(ny1=%lf,y2=%lfnn3y1,y2);(12)下面程序的功能是:将N行N列二维数组中每一行的元素进行排序,第0行从小到大排序,第1行从大到小排序,第2行从小到大排序,第3行从大到小排序,例如:回#defineN4voidsort(intaN)inti,j,k,t;for(i=0;ifor(j=O;jfor(k=13;k(13)下面程序的运行结果是:【15】oif(?aijaik)t=aij

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论