2023年到计算机二级语言笔试真题和答案_第1页
2023年到计算机二级语言笔试真题和答案_第2页
2023年到计算机二级语言笔试真题和答案_第3页
2023年到计算机二级语言笔试真题和答案_第4页
2023年到计算机二级语言笔试真题和答案_第5页
已阅读5页,还剩49页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

/3月全国计算机二级C语言

一、选择题((1)~(10)、(21)〜(40)每题2分,(11)〜(20)每题1分,共70分)

(1)下列论述中对的的是

A)对长度为n的有序链表进行查找,最坏状况下需要的比较次数为n

B)对长度为n的有序链表进行对分查找,最坏状况下需要的比较次数为(n/2)

C)对长度为n的有序链表进行对分查找,最坏状况下需要的比较次数为(log2n)

D)对长度为n的有序链表进行对分查找,最坏状况卜需要的比较次数为(Iog2n)

(2)算法的时间复杂度是指

A)算法的执行时间B)算法所处理的数据量

C)算法程序中的语句或指令条数D)算法在执行过程中所需要的基本运算次数

(3)软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。下面属于系统软件的是

A)编辑软件B)操作系统C)教务管理系统D)浏览器

(4)软件(程序)调试的任务是

A)诊断和改正程序中的错误B)尽量多地发现程序中的错误

C)发现并改正程序中H勺所有错误D)确定程序中错误的性质

(5)数据流程图(DFD图)是

A)软件概要设计的工具B)软件详细设计的工具

C)构造化措施的需求分析工具D)面向对象措施时需求分析工具

(6)软件生命周期可分为定义阶段,开发阶段和维护阶段。详细设计属于

A)定义阶段B)开发阶段C)维护阶段C)上述三个阶段

(7)数据库管理系统中负责数据模式定义的语言是

A)数据定义语言B)数据管理语言C)数据操纵语言D)数据控制语言

(8)在学生管理的关系数据库中,存取一种学生信息的数据单位是

A)文献B)数据库C)字段D)记录

(9)数据库设计中,用E-R图来描述信息构造但不波及信息在计算机中的表达,它属于数据库设计的

A)需求分析阶段B)逻辑设计阶段C)概念设计阶段D)物理设计阶段

(10)有两个关系R和T如下:

RT

ABCABC

ai2c32

b22d32

c32

d32

A)选择B)投影C)交D)并

(11)如下论述对的的是

A)C语言程序是由过程和函数构成口勺B)C语言函数可以嵌套调用,例如:Cun(fun(x))

OC语言函数不可以单独编译D)C语言中除了main函数,其他函数不可作为单独文献形式存在

(12)如下有关C语言的论述中对的的是

A)C语言中的注释不可以夹在变量名或关键字的J中间

B)C语言中的变量可以在使用之前H勺任何位置进行定义

C)在C语言算术体现式的书写中,运算符两侧的运算数类型必须•致

D)C语言的数值常量中夹带空格不影响常量位的对的表达

(13)如下C语言顾客标识符中,不合法的是

A)_1B)AaBcC)a_bD)a---b

(14)若有定义:doub1ea=22;inti=0,k=18;,则不符合C语言规定的赋值语句

A)a=a++,i++:B)i=(a+k)<=(i+k);C)i=a%11:D)i=!a:

(15)有如下程序

#include<stdio.h>

main()

{chara.b.c.d:

scanf(M%c%c",&a,&b);

c=getchar():d=getchar;

printf("%c%c%c%c\n”abed);}

当执行程序时,按下列方式输入数据(从第1列开始,VCR>代表回车,注意:回车也是一种字符)

12<CR>

34<CR>则输出成果是

A)1234B)12C)12D)12

334

(16)如下有关C语言数据类型使用的论述中错误的是

A)若要精确无误差的表达自然数,应使用整数类型

B)若要保留带有多位小数的数据,应使用双精度类型

C)若要处理如“人员信息”等具有不一样类型的有关数据,应自定义构造体类型

D)若只处理“真”和“假”两种逻辑值,应使用逻辑类型

(17)若a是数值类型,则逻辑体现式(a==I)||(al=1)时值是

A)1B)0C)2D)不懂得a的值,不能确定

(18)如下选项中与if(a==l)a=b;elsea++;语句功能不一样的switch语句是

A)switch(a)B)switch(a=1)C)switch(a)D)switch(a==l)

{case1:a=b:break:{case0:a=b:break;{default:a++:break:{case1:a=b:break:

default:a++;}case1:a++:}case1:a=b;}case0:a++;}

(19)有如下嵌套的if语句(20)有如下程序

if(a<b)#include<stdio.h>

if(a<c)k=a;main()

elsek=c;{int

if(b<c)k=b:for(i=l;i<3;i++)

ekek=c;如下选项中与上述if语句等价的语句是{ford=3;j>0;j-)

A)k=(a<b)?a:b;k=(b<c)?b:c;{if(i+j>3)break;

B)k=(a<b)?((b<c)?a:b)((b>c)?b:c):m*=i*j;}}

C)k=(a<b)?((a<c)?a:c)((b<c)?b:c);printR"m=%d\n",m);}程序运行后的输出成果是

D)k=(a<b)?a:b:k=(a<c)?a:c:A)m=6B)m=2C)m=4D)E=5

(21)有如下程序(22)有如下程序,其中k的初值为八进制数

#include<stdio.h>#include<stdio.h>

main()main()

{inta=l.b=2;{intk=0ll;

for(;a<8;a++){b+=a;a+=2;}printf("%d\n”,k++);}

prinif("%d,%d\n”,a,b);}程序运行后的输出成果毡程序运行后的输出成果是

A)9,18B)8.11A)12B)11C)10D)9

C)7,11D)10,14

(23)下列语句组中,对的的是

A)char*s:s="Olympic";B)chars(7]:s="Olympic";

C)char*s:s={"Olympic"}:D)chars|7]:s={"Olympic}:

(24)如下有关retum语句的论述中对的的是

A)一种自定义函数中必须有一条return语句

B)一种自定义函数中可以根据不一样状况设置多条relurn语句

C)定义成void类型的函数中可以有带返回值町'etum语句

D)没有reuirn语句的自定义函数在执行结束时不能返同到调用处

(25)下列选项中.能对内定义数组的语句是

A)intnum(0..]:B)intnum。;

C)intN=:D)#defineN

intnum(N];intnum|N]:

(26)有如下程序

#include<stdio.h>

voidfun(char*c,intd)

{*c=*c+l;d=d+l;

prin由"%c,%c”,*c,d);}}

inain()

{charb='a',a='A';

fun(&b,a);printf("%c,%c\n”程序运行后H勺输出成果是

A)b,B,b,AB)b,B,B,AC)a,B,B,aD)a,B,a,B

(27)若有定义int(*pt)[3]:,则下列说法对的的是

A)定义了基类型为inlH勺三个指针变量B)定义了基类型为int的具有三个元素的指针数组pi

C)定义了一种名为*pt、具有三个元素的整型数组

D)定义了一种名为pt的指针变量,它可以指向每行有三个整数元素的二维数组

(28)设有定义doublea[10L*s=a;,如下可以代表数组元索凯3]的是

A)(*s)[3]B)*(s+3)C)*s[3]D)*s+3

(29)有如下程序(30)有如下程序

#include<stdio.h>#include<stdio.h>

main()main()

{inta[5]={l,2,3,4,5},b[5]={0,2,l,3,0},i,s=0;(intb[31[3]=<0,1,2,0,1,2,0,1,2),i,j4=1;

for(i=l;i<3;i++)s=s+a[b[i]];for(i=l;i<3;i++)

printf("%d\n",s);}程序运行后晌输出成果是for(j=l;j<=l;j++)t+=b(i][b[j][i]];

A)6B)10printf("%d\n”.t):[程序运行后的输出成果是

C)11D)15A)1B)3C)4D)9

(31)若有如下定义和语句

charsl(10]="abed!",s2="'nl23\\":

prinlf("%d%d\n",strlen(si),strlen(s2)):则输出成果是

A)55B)105C)107D)58

(32)有如下程序(33)有如下程序

#include<stdio.h>#include<stdio.h>

#defineN8intf(intn);

voidfun(int*x,inti)main()

{*x=*x+i;}{inta[4]={l,2,3,4},s;

main()s=f(a.4);printf(°%d\n",s);}

{inta[Nl={1.2,.7.8|.i;intf(intt|].intn)

fun(a,2);for(i=l;i<N/2;i++){if(n>O)rciurn([n-1]+f(l,n-l);

(printf(a%dM,a[i]);}elsereturn0:}

primf(“\n”);}程序运行后的输山成果是程序运行后II勺输出成果是

A)1313B)2234A)4B)10

C)3234D)1234014D)6

(34)有如下程序(35)有如下程序

#include<stdio.h>#includc<sidio.h>

intfun()#defineSUB(a)(a)-(a)

{staticintx=i;main()

x*=2:returnx;}linta=2.b=3,c=5.d:

main()d=SUB(a+b)*c;

{inti,s=l;prinlf(“%d\n”,d);}

for(i=i;i<=2;i++)s=fun();程序运行后的输山成果是

prin【f("%d\n",s);}程序运行后的输出成果是A)0B)-12

A)0B)10-20D)10

C)4D)8

(36)设有定义:

structcomplex

(intreal.unreal;}dalal={1,8},由地;则如下赋值语句中错误的是

A)data2=datal:B)data2=(2,6):

C)data2.real=data1.real;D)data2.real=data1.unreal;

(37)有如下程序(38)有如下定义和语句

#include<stdio.h>Hruciworkers

#include<string.h>{ininumxharname[20];charc;

structAstruct

{inta;charb|l()]:doublec;};{intday;intmonthiintyearjs)

voidf(struclAl);sIructworkersw,*pw;

inain()pw=&w;能给w中year组员赋1980的语句是

(structAa={1001,^ZhangDa*,IO98.O);f(a);A)pw.year=l980:

printf(**%d,%s,%6.1f\n",a.a,a.b,a.c);}B)w.year=l980:

voidf(structAt)C)pw—>year=1980;

{t.a=1(X)2;strcpy(t.b,44ChangRong");l.c=1202.0;}输出成果是D)w.s.year=l980:

A)1001,ZhangDa,1098.0

B)1002,ChangRong,1202.0

C)1001,CliangRong.10980

D)1002,ZhangDa,1202.0

(39)有如下程序(40)有如下程序

#include<stdio.h>#include<stdio.h>

main()main()

{inta=2,b=a,c=2;{FILE*fp;charstr[10|;

printf(u%d\n",a/b&c);fp=open("inyfile.dai","w");

fputs(^abc",pf);close(pf);

程序运行后的输出成果是fp=open(uinyfile.dat",Ua+M);

A)0B)1fprintf(pf,“%d”,28);rewind(pf);

C)2D)3fscanf(pf,u%sM,str);puts(str);

close(pf);)程序运行后U勺输出成果是

A)abcB)28cC)abc28D)因类型不一致而出错

二、填空题(每空2分,共3。分)

请将每空的对的答案写在答题卡[1】〜【15】序号的横线上,答在试卷上不得分。

(1)一种队列的初始状态为空,现将元素A.B,C,D,E,F,5,4,3,2.1依次入队,然后再依次退

队,则元素退队的次序为【1】

(2)设某循环队列H勺容量为50,假如头指针fronl=45(指向队头元素的前一位置),尾指针

rear=10(指向队尾元素),则该循环队列中共有[2]个元素。

<3)设二叉树如下:

对该二叉树进行后序遍历的成果为[3](4)软件是[4]数据和文档的集合。

(5)有一种学生选课的关系,其中学生的关系模式为:学生(学号,姓名,班级.年龄),课程叼关系模式为:课

程(课号,课程名,课时),其中两个关系模式的键分别是学号和课号,则关系模式选课可定义为:选课(学号,

[5],成绩)。

(6)设x为ini型变量,请写出一种关系体现式【6],用以判断x同步为3和7的倍数时,关系体现式H勺

值为真。

(7)有如下程序(8)有如下程序

#include<stdio.h>#inchide<stdio.h>

inain()main()

{inta=1.b=2,c=3,d=0;{intm.n;

if(a=i)scanf(4*%d%dM

if(b!=2)while(m!=n)

if(c==3)d=l;{whilc(m>n)m=m-n;

elsed=2;while(m<n)n=n-ni:}

elseif(c!=3)d=3;prints"%d\n",m);}

elsed=4;程序运行后,当输入1463V回车〉时:

elsed=5;

prinif("%d\n",d);}程序远行后的输出成果是[7]输巴成果是【8】0

(9)有如下程序(10)有如下程序

#include<stdio.h>#include<stdio.h>

main()main()

{intij,a口[3]={123,4,5,6,7,8,9);{inta[]=<1,2,3,4,5,6),*k[3],i=0;

for(i=l;i<3;i++)whilc(i<3)

for(j=l;j<3;i++)prinlf("%d”,a[i皿);{k[i]=&a[2*i];

printf(u\n");}printf(,4%dM,*k[i|);i++;;}

程序运行后的输出成果是[9]程序运行后的输出成果是110]

(11)有如下程序(12)有如下程序

#include<stdio.h>#include<stdio.h>

main()#include<string.h>

{inta[31[3]={{1,2,3),(4.5.6),(7.8.9));voidfun(char*str)

intb|3]={0),i;{charlemp;intn.i;

for(i=l;i<3;i-H-)b(i]=a[i][2]+a[2][i);n=stiien(str);

or(i=l;i<3;i++)printf(w%dw,b[i]);temp=str[n-l];

prinlR“\n");}程序运行后的输出成果是[II]。fbr(i=n-1;i>0;i—)

<13)如下程序的功能是:将值为三位正整数的变量x中的main()

数值按照个位、str[i]=slr[i-l];sir⑼=temp;}十位、百位H勺次序{chars[50];scanffl%s”,s):fun(s):printf("%s\n",s);)

拆分并输出。请填空o程序运行后输入:abcdefV回车>,则输出成果

#include<stdio.h>是【12】

main()

{inix=256;

printf(u%d-%d-%d\n",[13],x/10%10,x/100);)

(14)如下程序用以删除字符串中所有H勺空格,请填空。(15)如下程序的功能是:借助指针变量

#include<stdio.h>或出数组元素中的最大值及其元素的下标值

main()请填空。

{char[100]=(uOurteacherteachclanguage!");intij;#include<stdio.h>

for(i=j=0;sli]!='\0';i++)main()

if(s[i]!=''){s[j]=s[i]J++;){inta[10],*p,*s;

s[j]=[14]:for(p=a;p-a<lO:p++)scanf("%d*,p);

prin【f("%s\n",s);}for(p=a,s=a;p-a<10;p++)if(*p>*s)s=[15]:

printf("index=%d\n"s-a);)

9月全国计算机等级考试二级笔试试卷

一、选择题((1)一(10)、[2D—(40)每题2分,(11)—(20)每题1分,共70分)

(1)下列数据构造中,属于非线性构造的是C

A)循环队列B)带链队列C)二叉树D)带链栈

(2)下列数据成果中,可以按照“先进后出”原则存取数据I内是

A)循环队列B)栈C)队列D)二叉树

(3)对于循环队列,下列论述中对H勺的是

A)队头指针是固定不变的B)队头指针一定不小于队尾指针

C)队头指针一定不不小于队尾指针D)队头指针可以不小于队尾指针,也可以不不小于队尾指针

(4)算法的空间复杂度是指A

A)算法在执行过程中所需要的计算机存储空间B)算法所处理的数据量

C)算法程序中啊语句或指令条数D)算法在执行过程中所需要的临时工作单元数

(5)软件设计中划分模块的一和准则是

A)低内聚低耦合B)高内聚低耦合C)低内聚高耦合D:,高内聚高耦合

(6)卜列选项中不属于构造化程序设计原则的是A

A)可封装B)自顶向下C)模块化D)逐渐求精

(7)软件详细设计产生的图如下:

该图是

A)N-S图B)PAD图C)程序流程图D)E-R图

(8)数据库管理系统是

A)操作系统的一部分B)在操作系统支持下的系统软件C)一种编译系统D)-•种操作系统

(9)在E-R图中,用来表达实体联络的图形是C

A)椭圆图B)矩形C)菱形D)三角形

(10)有三个关系R,S和T如下:

其中关系T由关系R和S通过某种操作得到,该操作为

A)选择B)投影。交D)并

(11)如下论述中对的H勺是

A)程序设计的任务就是编写程序代码并上机调试B)程序设计的任务就是确定所用数据构造

C)程序设计口勺任务就是确定所用算法D)以上三种说法都不完整

(12)如下选项中,能用作顾客标识符的是C

A)voidB)8_8C)_0_D)unsigned

(13)阅读如下程序

#include

main()

{intcase;floatprintF;

printf(“请输入2个数:");

$canfT'%d%f',&casc,&pjrintF);

primf("%d%f\n",case,prin【F);)该程序编译时产生错误,其出铐原因是A

A)定义语句出错,case是关键字,不能用作顾客自定义标识符

B)定义语句出错,printF不能用作顾客自定义标识符

C)定义语句无错,scanf不能作为输入函数使用D)定义语句无错,prinif不能输出case的值

(14)体现式:(int)((double)9/2)-(9)%2的值是

A)0B)3C)4D)5

(15)若有定义语句:intx=10;,则体现式x-=x+x/、J值为

A)-20B)-10C)0D)10

(16)有如下程序

#includc

main()

{inta=l,b=O;

printf(“%d,”,b=a+b);

printf("%d\rT,a=2*b);)程序运行后的输出成果是

A)0,0B)1,0C)3,2D)1,2

17)设有定义:inla=l,b=2,c=3;.如下语句中执行效果与其他三个不一样的是

A)if(a>b)c=a,a=b,b=c;B)if(a>b){c=a,a=b,b=c;}C)if(a>b)c=a;a=b;b=c;D)if(a>b){c=a;a=b;b=c;}

(18)有如下程序

#include

main()

{intc=O,k;

for(k=l;k<3;k++)

switch(k)

{default:c+=k

case2:c++;brcak;

case4:c+=2;break:}

printf(-%d\n,\c);)程序运行后的输出成果是

A)3B)5C)7D)9

(19)如卜程序段中,与语句:k=a>b?(b>c?l:O):O:功能相似的是

A)if((a>b)&&(b>c))k=l;B)if((a>b)||(b>c)k=l;C)if(a<=b)k=0D)if(a>b)k=1;

elsek=0;elsek=0;elseif(b<=c)k=1;elseif(b>c)k=I;

elsek=0:

20)有如下程序(21)有如下程序

#include#inckide

main()rnain()

{chars[]=fl012xyw);inti,n=0;{intn=2.k=0;

for(i=0;s[i]!=0;i++)whilc(k++&&n++>2);

if(s[i]>=,a'&&s[i]<=,z,)n++;printfC4%d%d\n”,k,n);}程序运行后的输出成果是

print(T%d\n”,n);)程序运行后的输出成果是

A)0B)2C)3D)5A)02B)13057D)i2

(22)有如下定义语句,编译时会出现编译错误口勺是

A)chara=,a\B)chara-\n';C)chara='aa';D)chara=,\x2d,;

(23)有如下程序(24)有如下程序

#include#include

niain()voidfun(intp)

{charcl,c2;{inid=2;

cl='A+8',4';p=d++;printfV'%d".p);}

c2='A'+'8'-'5';main。

printf("%c,%d\n”,c[c2);}已知字母A的{inta=l;

ASCH码为65,程序运行后的输出成果是fun(a);primf("%d\n",a);}程序运行后的输出成果是

A)E,68B)D,69C)E.DD)输出无定值A)32B)12C)21D)22

(25)如下函数findmax拟实目前数组中查找最大值并作为函数值返回,但程序中有错导致不能实现预定功

能#defineMIN-

inifindmax(intx[],in(n)

{inti.max:

for(i=0;i<N;I++)<p=""/>

{max=MIN:

if(max

returnmax;}导致错误的原因是

A)定义语句inti,max;中max未赋初值

B)赋值语句max=MIN;中,不应给max赋MIN值

C)语句if(maxD)赋值语句max=MlN;放错了位置

(26)有如下程序#include

main。

{intm=1,n=2,*p=&m.*q=&n,*r;

primf("%d,%d,%d,%d\n'',m,n,*p,*q);}程序运行后的输出成果是

A)1,2,1,2B)1,2,2」C)2,1,2,1D)2.1,1.2

(27)若有定义语句:inia[4巾0],*p.*q[4];且0Wi<4,则错误的赋值是

A)p=aB)q[i]=a[i]C)p=a[i]D)p=&a⑵[1]

(28)有如卜程序#include

#include

tnain()

{charstr[][20]={0One*Worldw,**One*Dream!v},*p=str[l];

prinin(“%d,”,slrlcn(p)):prinin("%s\n”,p);)程序运行后的输出成果是

A)9.One*WorldB)9,One*DreamC)lO.One*DreamD)lO.One*World

(29)有如卜程序(30)有如下程序#include

#include#include

inain()niain()

(inta[]=(2,3,5,4),i;(chara[10]='abed'';

for(i=0;i<4;i++)printf{t4%d,%d\n,*,strlen(a),sizeof(a));)

switch(i%2)程序运行后的输出成果是

(case0:switch(a[i]%2)A)7,4B)4,10

{caseO:a[il++;break;C)8.8D)10.10

case1:a(i]-;

}break:

caseI:a[i[=0;]

tbr(i=0;i<4;i++)printf("%d,',a[i]);printfT'n");}

A)3344B)2050C)3040D)0304

(31)下面是有关C语言字符数组的描述,其中错误的是

A)不可以用赋位语句给字符数组名赋字符串B)可以用输入语句把字符串整体输入给字符数组

C)字符数组中的内容不一定拈字符串D)字符数组只能寄存字符串

(32)下列函数的功能是

fun(char*a,char*b)

{while((*b=*a)!=>\O,)[a++,b++;}}

A)将a所指字符串赋给b所指空间B)使指针b声向a所指字符串

C)将a所指字符串和b所指字符串进行比较D)检查a和b所指字符串中与否有30,

(33)设有如卜函数

voidfiin(intn,char*s){.......}

则卜面对函数指针的定义和赋值均是对的H勺是

A)void(*pf)();pf=fun:B)vbd*pf();pf=fun;C)void*pf();*pf=fun:D)void(*pf)(int.char):pf=&fun;

(34)有如F程序#include(35)有如卜程序#include

intf(intn);#defmef(x)x*x*x

niain()main()

{inta=3,s;{inta=3,s,t;

s=f(a);s=s+f(a);printf(**%d\n',,s);}s=f(a+l);t=f((a+l));

intf(intn)printtr4%d.%d\n\s,t);}

{staticinta=l;程序运行后的输出成果是

n+=a++;A)10,64B)10.10

returnn;}程序运行后来的输出成果C)64,10D)64.64

A)7B)8C)9D)10

(36)下面构造体的定义语句中,错误的是

A)structord{intx:intyiintz;];structorda;B)structord(intx:inty;intz;}structorda:

C)structord{inix;inty;inlz;}a;D)struct{intx;inly:int

温馨提示

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

评论

0/150

提交评论