




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2025年全国计算机二级等级考试全真模拟试卷及答案(共八套)2025年全国计算机二级等级考试全真模拟试卷及答案(一)1.下列叙述中正确的是A)程序可以作为算法的一种表达方式B)算法的有穷性是指算法的规模不能太大C)算法的复杂度用于衡量算法的控制结构D)算法的效率与数据的存储结构无关(2015.3)参考答案:A2.某循环队列的存储空间为Q(1:m),初始状态为front=rear=m。现经过一系列的入队操作和退队操作后,front=m-1,rear=m,则该循环队列中的元素个数为A)m-1B)1C)mD)0参考答案:B(2015.3)3.能从任意一个结点开始没有重复地扫描到所有结点的数据结构是A)循环链表B)双向链表C)二叉链表D)有序链表参考答案:A4.某棵树中共有25个结点,且只有度为3的结点和叶子结点,其中叶子结点有7个,则该树中度为3的结点数为A)不存在这样的树B)7C)8D)6参考答案:A5.在最坏情况下,二分查找法的时间复杂度为A)B)C)D)参考答案:C6.某二叉树共有730个结点,其中度为1的结点有30个,则叶子结点个数为A)不存在这样的二叉树B)351C)1D)350参考答案:A7.软件开发中需求分析的主要任务是A)定义和描述目标系统"做什么"B)获取需求C)给出软件解决方案D)需求评审参考答案:A8.软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。下面属于系统软件的是A)学生成绩管理系统B)ERP系统C)办公自动化系统D)UNIX系统参考答案:D9.医生可以为病人开不同的药,而同一种药也可由不同医生开给病人,则实体医生和实体药之间的联系是A)多对多B)一对一C)多对一D)一对多参考答案:A0.学生选课成绩表的关系模式是SC(S#,C#,G),其中S#为学号,C#为课号,G为成绩,检索课号为2且成绩及格的学生学号的表达式为A)B)C)D)参考答案:A11.若想定义int型变量a,b,c,d并都赋值为1,以下写法中错误的是A)inta=b=c=d=1;B)inta=1,b=1,c=1,d=1;C)inta,b,c,d;a=b=c=d=1;D)inta,b,c,d=1;a=b=c=d;参考答案:A12.若有定义:charc;doubled;程序运行时输入:12<回车>,能把字符1输入给变量c、数值2输入给变量d的输入语句是A)scanf("%d%lf",&c,&d);B)scanf("%c%lf",&c,&d);C)scanf("%c%f",&c,&d);D)scanf("%d%f",&c,&d);参考答案:B13.输出语句:printf("%d\n",11+011);的输出结果是A)20B)22C)022参考答案:A14.以下叙述正确的是A)有些算法不能用三种基本结构来表达B)C语言程序不编译也能直接运行C)结构化程序的三种基本结构是循环结构、选择结构、顺序结构D)如果C语言程序实现的算法很简单,则计算机不进行任何代码转换就能执行程序参考答案:C15.若有定义:doublex;,则表达式:x=0,x+10,x++的值是A)11.0B)10.0C)0.0D)1.0参考答案:C16.有以下程序#include<stdio.h>main(){intx=1,y=0,a=0,b=0;switch(x){case1:switch(y){case0:a++;break;case1:b++;break;}case2:a++;b++;break;case3:a++;b++;}printf("a=%d,b=%d\n",a,b);}程序的运行结果是A)a=2,b=2B)a=2,b=1C)a=1,b=1D)a=1,b=0参考答案:B17.以下程序段中的变量已正确定义for(i=0;i<4;i++,i++)for(k=1;k<3;k++);printf("*");该程序段的输出结果是A)*B)****C)**D)********参考答案:A18.有以下程序#include<stdio.h>main(){charc;for(;(c=getchar())!='#';){if(c>='a'&&c<='z')c=c-'a'+'A';putchar(++c);}}执行时输入:aBcDefG##<回车>,则输出结果是A)AbCdEFgB)ABCDEFGC)BCDEFGH参考答案:C19.有以下程序#include<stdio.h>intf(intx);main(){intn=1,m;m=f(f(f(n)));printf("%d\n",m);}intf(intx){returnx*2;}程序运行后的输出结果是程序运行后的输出结果是A)4B)2C)8D)1参考答案:C20.关于地址和指针,以下叙述正确的是A)可以通过强制类型转换让char型指针指向double型变量B)函数指针p指向一个同类型的函数f时,必须写成:p=&f;C)指针p指向一个数组f时,必须写成:p=&f;D)一个指针变量p可以指向自身参考答案:A21.有以下程序#include<stdio.h>#defineN4intfun(inta[][N]){inti,j,x=0;for(i=0;i<N;i++)for(j=0;j<N;j++)if(i==j)x+=a[N-1-j][i];returnx;}main(){intx[N][N]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,17}},y;程序运行后的输出结果是A)34B)35C)28D)59参考答案:A22.有以下程序#include<stdio.h>#defineN3voidfun(intx[][N],int*r1,int*r2){inti,j;*r1=*r2=0;for(i=0;i<N;i++){j=N-(i+1);if(x[*r1][*r2]<x[i][j]){*r1=i;*r2=j;}}}main(){inta[N][N]={1,5,7,9,2,6,4,3,8},i,j;fun(a,&i,&j);printf("%d\n",a[i][j]);}程序运行后的输出结果是A)8B)6C)7参考答案:C23.对于以下函数声明voidfun(intarray[4],int*ptr);以下叙述中正确的是A)array,ptr都是指针变量B)调用fun函数时,实参的值将逐一复制给arrayC)调用fun函数时,array按值传送,ptr按地址传送D)array是数组,ptr是指针,它们的性质不同参考答案:A24.设有定义:intx[10],*p=x,i;,若要为数组x读入数据,以下选项正确的是A)for(i=0;i<10;i++)scanf("%d",p+i);B)for(i=0;i<10;i++)scanf("%d",*p+i);C)for(i=0;i<10;i++)scanf("%d",*(p+i));D)for(i=0;i<10;i++)scanf("%d",x[i]);参考答案:A25.有以下程序#include<stdio.h>main(){chars[]="012xy\08s34f4w2";inti,n=0;for(i=0;s[i]!=0;i++)if(s[i]>='0'&&s[i]<='9')n++;printf("%d\n",n);}程序运行后的输出结果是A)7B)0C)3参考答案:C26.有以下程序段charstr[4][12]={"aaa","bbb","ccc","ddd"},*p[4];inti;for(i=0;i<4;i++)p[i]=str[i];以下选项中不能正确引用字符串的是A)*p[3]B)p[3]C)str[2]参考答案:A27.有以下程序#include<stdio.h>intmul(intval){staticintinit=1;returninit*=val;}main(){inti;for(i=1;i<=5;i++)printf("%d,",mul(i));}程序运行后的输出结果是A)1,2,6,24,120,B)1,2,3,4,5,C)1,1,1,1,1,D)1,2,4,6,8,参考答案:A28.有以下程序#include<stdio.h>voidfun(intn){staticintk=0;if(n<0){printf("-");n=-n;}k+=n%10;printf("%d,",k);if(n/10)fun(n/10);}程序运行后的输出结果是A)-2,3B)-1,-2,C)-2,-3,D)-2,1参考答案:A29.有以下程序#include<stdio.h>structS{intn;inta[20];};voidf(structS*p){inti,j,t;for(i=0;i<p->n-1;i++)for(j=i+1;j<p->n;j++)if(p->a[i]>p->a[j]){t=p->a[i];p->a[i]=p->a[j];p->a[j]=t;}}main(){inti;structSs={10,{2,3,1,6,8,7,5,4,10,9}};f(&s);for(i=0;i<s.n;i++)printf("%d,",s.a[i]);}程序运行后的输出结果是A)1,2,3,4,5,6,7,8,9,10,B)10,9,8,7,6,5,4,3,2,1,C)2,3,1,6,8,7,5,4,10,9,参考答案:A30.有以下程序#include<stdio.h>typedefstructstu{charname[10];chargender;intscore;}STU;voidf(STUa,STU*b,STUc){*b=c=a;printf("%s,%c,%d,",b->name,b->gender,b->score);printf("%s,%c,%d,",,c.gender,c.score);}main()程序运行后的输出结果是A)Zhao,m,290,Zhao,m,290,Zhao,m,290,Sun,m,370B)Zhao,m,290,Zhao,m,290,Zhao,m,290,Zhao,m,290C)Zhao,m,290,Zhao,m,290,Qian,f,350,Sun,m,370D)Zhao,m,290,Zhao,m,290,Qian,f,350,Zhao,m,290参考答案:A31.有以下程序#include<stdio.h>#defineSUB(x,y)(x)*(y)main(){inta=3,b=4;printf("%d\n",SUB(a++,b++));}程序运行后的输出结果是A)15B)12C)16D)20参考答案:B32.有以下程序#include<stdio.h>main(){structcm{intx;inty;}a[2]={4,3,2,1};printf("%d\n",a[0].y/a[0].x*a[1].x);}程序运行后的输出结果是A)1B)4C)0参考答案:C33.以下选项中的编译预处理命令行,正确的是A)#defineE2.38B)##definePI_21.56C)#defineintINTD)#DEFINETRUE参考答案:A34.设有以下程序段structbook{floatprice;charlanguage;chartitle[20];}rec,*ptr;ptr=&rec;要求输入字符串给结构体变量rec的title成员,错误的输入语句是A)scanf("%s",ptr.title);B)scanf("%s",rec.title);C)scanf("%s",(*ptr).title);D)scanf("%s",ptr->title);参考答案:A35.有以下程序#include<stdio.h>#include<string.h>structcomputer{charCPU[10];};main(){structcomputerpc1,pc2;strcpy(pc1.CPU,"3.2G");strcpy(pc2.CPU,"????");pc1=pc2;printf("%s\n",pc1.CPU);}程序运行后的输出结果是A)?B)3.2GC)????D)?.2G36.有以下程序#include<stdio.h>main(){inta=2,b;b=(a>>=1)+4;printf("%d,%d",a,参考答案:C程序运行后的输出结果是A)1,5B)2,4C)2,6D)2,5参考答案:A37.若要建立下图所示的存储结构,以下正确的程序段是()。A)char**q,*p,c;p=&c;q=&p;B)char**q,*p,c;p=&c;q=*p;C)char*q,*p,c;p=&c;*q=p;参考答案:A38.有以下程序#include<stdio.h>structtt{intx;structtt*y;}s[3]={1,0,2,0,3,0};main(){structtt*p=s+1;p->y=s;printf("%d,",p->x);p=p->y;printf("%d\n",p->x);}程序运行后的输出结果是2,3程序运行后的输出结果是A)2,3B)2,1C)1,2D)3,1参考答案:B39.有以下程序#include<stdio.h>main(){intx=3,y=5;x=x^y;y=x^y;x=x^y;printf("%d,%d\n",x,y);程序运行后的输出结果是A)3,5B)5,3C)35,35D)8,8参考答案:B40.有以下程序#include<stdio.h>structtt{intx;structtt*y;}s[2]={1,0,2,0};main(){structtt*p=s;p->y=s;printf("%d",++p->x);}程序运行后的输出结果是A)2B)0C)1D)32025年全国计算机二级等级考试全真模拟试卷及答案(二)1.下列关于算法复杂度叙述正确的是A)最坏情况下的时间复杂度一定高于平均情况的时间复杂度B)时间复杂度与所用的计算工具无关C)对同一个问题,采用不同的算法,则它们的时间复杂度是相同的D)时间复杂度与采用的算法描述语言有关参考答案:B(2025.9)2.设有栈S和队列Q,初始状态均为空。首先依次将A,B,C,D,E,F入栈,然后从栈中退出三个元素依次入队,再将X,Y,Z入栈后,将栈中所有元素退出并依次入队,最后将队列中所有元素退出,则退队元素的顺序为A)DEFXYZABCB)DEFXYZABCC)FEDXYZCBAD)DEFZYXABC参考答案:B(2025.9)3.下列叙述中正确的是A)有两个指针域的链表称为二叉链表B)循环链表是循环队列的链式存储结构C)带链的栈有栈顶指针和栈底指针,因此又称为双重链表D)结点中具有多个指针域的链表称为多重链表参考答案:D(2025.9)4.某二叉树共有845个结点,其中叶子结点有45个,则度为1的结点数为A)400B)754C)756D)不确定参考答案:C(2025.9)5.软件需求分析阶段的主要任务是A)确定软件开发方法B)确定软件开发工具C)确定软件开发计划D)确定软件系统的功能参考答案:D(2025.9)6.下面对软件测试描述错误的是A)严格执行测试计划,排除测试的随意性B)随机地选取测试数据C)随机地选取测试数据D)软件测试是保证软件质量的重要手段参考答案:B(2025.9)7.结构化程序的三种基本控制结构是A)顺序、选择和重复(循环)B)过程、子程序和分程序C)顺序、选择和调用D)调用、返回和转移参考答案:A(2025.9)8.数据库中对概念模式内容进行说明的语言是A)数据定义语言B)数据操纵语言C)数据控制语言D)数据宿主型语言参考答案:A(2025.9)9.某个工厂有若干个仓库,每个仓库存放有不同的零件,相同零件可能放在不同的仓库中。则实体仓库和零件间的联系是A)多对多B)一对多C)多对一D)一对一参考答案:A(2025.9)10.A)交B)差C)并D)选择参考答案:A(2025.9)11.以下叙述正确的是A)计算机只接收由0和1代码组成的二进制指令或数据B)计算机只接收由0和1代码组成的十进制指令或数据C)计算机可直接接收并运行C源程序D)计算机可直接接收并运行任意高级语言编写的源程序参考答案:A(2025.9)12.若有C语言表达式2+3*4+7/3,以下选项中叙述正确的执行顺序是A)先执行3*4得12,再执行7/3得2.5,最后执行2+12+2.5得16.5B)先执行3*4得12,再执行2+12得14,再执行7/3得2,最后执行14+2得16C)先执行7/3得2,再执行3*4得12,再执行12+2得14,最后执行2+14得16D)先执行2+3得5,再执行5*4得20,再执行20+7得27,最后执行27/3得9参考答案:B(2025.9)13.若有定义:charc;intd;程序运行时输入:c=1,d=2<回车>,能把字符1输入给变量c、整数2输入给变量d的输入语句是A)scanf("c=%dd=%d",&c,&d);B)scanf("c=%cd=%d",&c,&d);C)scanf("c=%d,d=%d",&c,&d);D)scanf("c=%c,d=%d",&c,&d);参考答案:D(2025.9)14.以下选项中,与n=i++完全等价的表达式是A)n=i,i=i+1B)n+=i+1C)i=i+1,n=iD)n=++i参考答案:A(2025.9)15.设有定义:intn=1234;doublex=3.1415;则语句printf("%3d,%1.3f\n",n,x);的输出结果是A)1234,3.142B)123,3.142C)1234,3.141D)123,3.141参考答案:A(2025.9)16.有以下程序#include<stdio.h>main(){inta,b;for(a=0;a<3;a++){scanf("%d",&b);switch(b){default:printf("%d,",++b);case1:printf("%d,",++b);case2:printf("%d,",++b);}}}执行时输入:123<回车>,则输出结果是A)2,2,3,4,4,4,B)2,3,4,C)2,3,3,4,5,6,D)2,3,4,3,4,4,参考答案:C(2025.9)17.设变量m为float类型,变量n为int类型,则以下能实现将m中的数值保留小数点后两位,第三位进行四舍五入运算的表达式是A)m=(m*100+0.5)/100.0B)n=m*100+0.5,m=n/100.0C)n=m/100+0.5,m=n*100.0D)m=m*100+0.5/100.0参考答案:B(2025.9)18.有以下程序#include<stdio.h>main(){inta=1,b=1;for(;a--;)b--;printf("%d,%d\n",a,b);}程序运行后的输出结果是A)-1,0B)0,0C)-1,-1D)1,1参考答案:A(2025.9)19.若有定义:chars[30]={0};运行时输入:Thisisastring.<回车>则以下不能正确读入整个字符串:Thisisastring.到字符数组s中的语句组是A)i=0;while((c=getchar())!='\n')s[i++]=c;B)gets(s);C)for(i=0;(c=getchar())!='\n';i++)s[i]=c;D)scanf("%s",s);参考答案:D(2025.9)20.有如下程序#include<stdio.h>main(){inta=0,b=1;if(a++&&b++)printf("TRUE");elseprintf("FALSE");printf("_OUT:a=%d,b=%d\n",a,b);}程序运行后的输出结果是printf("FALSE");printf("_OUT:a=%d,b=%d\n",a,b);}程序运行后的输出结果是A)FALSE_OUT:a=1,b=1B)FALSE_OUT:a=0,b=2C)TRUE_OUT:a=1,b=2D)TRUE_OUT:a=0,b=1参考答案:A(2025.9)21.有如下程序#include<stdio.h>main(){inti,data;scanf("%d",&data);for(i=0;i<5;i++){if(i<data)continue;printf("%d-",i);}}程序运行时,从键盘输入:3<回车>后,程序输出结果为A)3-4-B)1-2-3-C)0-1-2-D)0-1-2-3-参考答案:A(2025.9)22.有以下程序#include<stdio.h>main(){inta=0,b=1;if(++a==b++)printf("1");elseprintf("0");printf("a=%d,b=%d\n",a,b);}程序运行后的输出结果是A)1a=0,b=1B)0a=1,b=2C)1a=1,b=2D)0a=0,b=2参考答案:C(2025.9)23.有如下程序段for(i=0;i<10;i++)if(i<=5)break;则循环结束后i的值为A)1B)0C)5D)10参考答案:B(2025.9)24.设有定义:inta=0,b=1;,以下表达式中,会产生"短路"现象,致使变量b的值不变的是A)a++&&b++B)a++||++bC)++a&&b++D)+a||++b参考答案:A(2025.9)25.有如下程序段for(i=0;i<10;i++)if(i>5)break;则循环结束后i的值为A)10B)5C)9D)6参考答案:D(2025.9)26.有以下程序段intx,i;for(i=1;i<=100;i++){scanf("%d",&x);if(x<0)continue;printf("%4d\n",x);}下面针对上述程序段的描述正确的是A)最多可以输出100个非负整数B)当x<0时结束整个循环C)当x>=0时没有任何输出D)printf函数调用语句总是被跳过参考答案:A(2025.9)27.关于地址和指针,以下说法正确的是A)通过强制类型转换可以将一种类型的指针变量赋值给另一种类型的指针变量B)可以取一个常数的地址赋值给同类型的指针变量C)可以取一个表达式的地址赋值给同类型的指针变量D)可以取一个指针变量的地址赋值给基类型相同的指针变量参考答案:A(2025.9)28.有以下程序#include<stdio.h>#defineN4voidfun(inta[][N]){inti;for(i=0;i<N;i++)a[0][i]+=a[N-1][N-1-i];}main(){intx[N][N]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}},i;fun(x);for(i=0;i<N;i++)printf("%d,",x[i][i]);printf("\n");}程序运行后的输出结果是A)4,7,10,13,B)1,6,11,16,C)17,6,11,16,D)5,13,21,29,参考答案:C(2025.9)29.关于C语言函数说明的位置,以下叙述正确的是A)在函数说明之后对该函数进行调用,编译时不会出现错误信息B)函数说明可以出现在源程序的任意位置,在程序的所有位置对该函数的调用,编译时都不会出现错误信息C)函数说明只能出现在源程序的开头位置,否则编译时会出现错误信息D)函数说明只是为了美观和编译时检查参数类型是否一致,可以写也可以不写参考答案:A(2025.9)30.以下叙述正确的是A)不能在数组说明符的一对方括号中使用表达式B)charc1,*c2,**c3,c4[2];是C语言的合法语句C)数组下标的最小值可以是负值D)若有数组定义intarray[5];则语句printf("%d",array[1.23]);是合法的参考答案:B(2025.9)31.有以下程序#include<stdio.h>main(){inta=2,*ptr;ptr=&a;*ptr=8;a=(*ptr)++;printf("%d,%d\n",a,*ptr);}程序运行后的输出结果是A)9,9B)8,9C)2,4D)0,4参考答案:A(2025.9)32.有以下程序#include<stdio.h>main(){inti,*ptr;intarray[4]={0,1};for(ptr=array,i=0;i<3;i++,ptr++){if(*ptr==0)putchar('#');elseputchar('M'+*ptr);}printf("\n");}程序运行后的输出结果是A)MO#B)#F#C)MMMD)#N#参考答案:D(2025.9)33.有以下程序段:intm[2][3],(*p)[3];p=m;则以下对m数组元素的引用正确的是A)(p+1)[0]B)*(*(p+2)+1)C)*(p[1]+1)D)p[1]+2参考答案:C(2025.9)34.有以下程序#include<stdio.h>char*a="you";char*b="WelcomeyoutoBeijing!";main(){char*p;p=b;while(*p!=*a)p++;printf("%s\n",p);}程序运行后的输出结果是A)youtoBeijing!B)toBeijing!C)WelcomeyoutoBeijing!D)Beijing!参考答案:A(2025.9)35.有以下程序#include<stdio.h>voidf(intx[],intn){if(n>1){printf("%d,",x[n-1]);f(x,n-1);printf("%d,",x[n-1]);}elseprintf("%d,",x[0]);}main(){intz[3]={1,2,3};f(z,3);printf("\n");}程序运行后的输出结果是A)3,1,3,B)3,2,1,2,3,C)1,2,3,1,2,3,D)1,2,3,2,1,(2025.9)36.有以下程序#include<stdio.h>inta=2;intf(intk){staticintn;intm;m=n=0;n++;a++;m++;k++;returnn+m+a+k;}main(){intk;for(k=0;k<2;k++)printf("%d,",f(k));printf("\n");}程序运行后的输出结果是A)6,8,B)6,9,C)6,6,D)6,7,参考答案:A(2025.9)37.有以下程序#include<stdio.h>intsum(int*array,intlen){if(len==1)returnarray[1];elsereturnarray[1]+sum(array+1,len-1);}main(){intarray[5]={0,9,1,2},res;res=sum(array,3);printf("%d\n",res);}程序运行后的输出结果是A)27B)11C)8D)12参考答案:D(2025.9)38.有以下程序#include<stdio.h>main(){chars[10]="verygood",*ps=s;ps="too";s[4]='\0';puts(ps);}程序的运行结果是A)tooB)verygoodC)veryD)good参考答案:A(2025.9)39.以下叙述中错误的是A)函数中的形参属于局部变量B)在函数内部定义的变量只能在本函数范围内使用C)在函数外部定义的变量在所有函数中都有效D)在不同的函数中可以使用相同名字的变量参考答案:C(2025.9)40.有以下程序#include<stdio.h>main(){FILE*fp;inti,a[6]={1,2,3,4,5,6},k;fp=fopen("data.dat","w+");fprintf(fp,"%d\n",a[0]);for(i=1;i<6;i++){rewind(fp);fprintf(fp,"%d\n",a[i]);}rewind(fp);fscanf(fp,"%d",&k);fclose(fp);printf("%d\n",k);}程序运行后的输出结果是A)6B)21C)123456D)654321参考答案:A2025年全国计算机二级等级考试全真模拟试卷及答案(三)(2025.9)1.下列叙述中正确的是A)每一个结点有两个指针域的链表一定是非线性结构B)所有结点的指针域都为非空的链表一定是非线性结构C)循环链表是循环队列的链式存储结构D)线性结构的存储结点也可以有多个指针参考答案:D(2025.9)2.使用白盒测试方法时,设计测试用例应根据A)程序的内部逻辑B)程序的复杂结构C)程序的功能D)使用说明书参考答案:A(2025.9)3.在医院,每个医生只属于某一个诊疗科,医生同一天可为多位患者看病,而一名患者可在多个科室治疗。则实体医生和患者之间的联系是A)多对多B)多对一C)一对多D)一对一参考答案:A(2025.9)4.设序列长度为n,在最坏情况下,时间复杂度为O(log2n)的算法是A)二分法查找B)顺序查找C)分块查找D)哈希查找参考答案:A(2025.9)5.设数据集合为D={1,3,5,7,9},D上的关系为R,下列数据结构B=(D,R)中为非线性结构的是A)R={(5,1),(7,9),(1,7),(9,3)}B)R={(9,7),(1,3),(7,1),(3,5)}C)R={(1,9),(9,7),(7,5),(5,3)}D)R={(1,3),(3,5),(5,9)}参考答案:D(2025.9)6.深度为7的二叉树共有127个结点,则下列说法中错误的是A)该二叉树有一个度为1的结点B)该二叉树是满二叉树C)该二叉树是完全二叉树D)该二叉树有64个叶子结点参考答案:A(2025.9)7.某二叉树的中序序列为BDCA,后序序列为DCBA,则前序序列为A)DCBAB)BDCAC)ABCDD)BADC参考答案:C(2025.9)8.下面能作为软件需求分析工具的是A)PAD图B)程序流程图C)甘特图D)数据流程图(DFD图)参考答案:D(2025.9)9.下面不属于对象主要特征的是A)唯一性B)多态性C)可复用性D)封装性参考答案:C(2025.9)10.A)(c,c,11,4)B)(b,b,11,4)C)(a,a,2,4)D)(a,a,2,4)和(e,e,6,1)参考答案:A(2025.9)11.简单程序设计步骤中不包括A)编码B)确定算法C)安装编译程序D)调试参考答案:C(2025.9)12.若想给已定义为int型的变量a,b,c,d赋值为1,以下选项中错误的语句是A)d=1,c=d,b=c,a=b;B)a=b=c=d=1;C)a=1,b=a,c=b,d=c;D)a=b,b=c,c=d,d=1;参考答案:D(2025.9)13.有C语言表达式2*3+4+15%3,关于其执行顺序,以下叙述正确的是A)先执行2*3得6,再执行6+4得10,再执行15%3得0,最后执行10+0得10B)先执行2*3得6,再执行15%3得5,最后执行6+4+5得15C)先执行15%3得0,再执行2*3得6,最后执行6+4+0得10D)先执行15%3得3,再执行4+3得7,再执行2*3得6,最后执行6+7得13参考答案:A(2025.9)14.若有定义:inta;floatb;doublec;,程序运行时输入:1,2,3<回车>,能把1输入给变量a、2输入给变量b、3输入给变量c的输入语句是A)scanf("%d,%f,%lf",&a,&b,&c);B)scanf("%d%f%lf",&a,&b,&c);C)scanf("%d,%lf,%lf",&a,&b,&c);D)scanf("%d,%f,%f",&a,&b,&c);参考答案:A(2025.9)15.以下选项中,合法的C语言实数是A)E1B).1e0C)0.10ED)2.1e0.2参考答案:B(2025.9)16.关于程序中的注释,以下叙述正确的是A)注释的内容必须放在一对/*和*/之间B)注释必须置于所说明的语句前或语句后C)注释中间可以嵌套另一个注释D)注释内容错误会导致编译出错参考答案:A(2025.9)17.有以下程序#include<stdio.h>main(){inta,b;for(a=0;a<3;a++){scanf("%d",&b);switch(b){default:printf("%d,",b++);case1:printf("%d,",b++);case2:printf("%d,",b++);}}}程序运行时输入:123<回车>,则输出结果是A)1,2,3,2,3,3,B)1,2,3,C)1,2,2,3,4,5,D)1,1,1,2,2,3参考答案:C(2025.9)18.以下非法的定义语句是A)longb=0L;B)unsignedinta=-100u;C)shortc2=0123;D)intd=0x0;参考答案:B(2025.9)19.有以下程序#include<stdio.h>main(){inta=0,b=0;for(;a<5;a++){if(a%2==0)continue;b+=a;break;}printf("%d\n",b);}程序运行后的输出结果是A)1B)4C)0D)10参考答案:A(2025.9)20.有以下程序#include<stdio.h>main(){charc;c=getchar();do{putchar(c++);}while((c=getchar())!='#');}程序运行时从第一列开始输入:abcdefg##<回车>,则输出结果是A)bcdefgh$B)bcdefghC)abcdefg#D)abcdefg参考答案:D(2025.9)21.有如下程序#include<stdio.h>main(){chara='0',b='a';inti;for(i=0;i<4;i++){if(i%3)putchar(a+i);elseputchar(b+i);}}程序运行后的输出结果是A)a12dB)ab3dC)10abD)11ac参考答案:A(2025.9)22.有以下程序#include<stdio.h>main(){charch='M';while(ch!='K'){putchar(ch);ch--;}}程序运行后的输出结果是A)MLB)MKC)OPD)mm参考答案:A(2025.9)23.有以下程序#include<stdio.h>intk=5;voidf(int*s){s=&k;*s=k;}main(){intm=3;f(&m);printf("%d,%d\n",m,k);}程序运行后的输出结果是A)3,3B)5,5C)3,5D)5,3参考答案:C(2025.9)24.有如下程序#include<stdio.h>intsum_mod(inta,intb){returna+b%2;}main(){inti;for(i=0;i<5;i++)printf("%d",sum_mod(i,4));printf("\n");}程序运行后的输出结果是A)12345B)01234C)45678D)43210参考答案:B(2025.9)26.有如下程序段int*p,a=1;p=&a;*p=10;则变量a的值为A)不能确定B)1C)10D)11参考答案:C(2025.9)27.有以下程序#include<stdio.h>inta=2;intf(intk){staticintn=0;intm=0;n++;a++;m++;k++;returnn+m+a+k;}main(){intk;for(k=0;k<2;k++)printf("%d,",f(k));printf("\n");}程序运行后的输出结果是A)6,9,B)6,10,C)6,6,D)6,7,参考答案:A(2025.9)28.有以下程序#include<stdio.h>voidf(intx[],intn){if(n>1){printf("%d,",x[0]);f(&x[1],n-1);printf("%d,",x[0]);}elseprintf("%d,",x[0]);}main(){intz[3]={4,5,6};f(z,3);printf("\n");}程序运行后的输出结果是A)6,5,4,6,5,4,B)4,5,6,5,4,C)4,5,6,4,5,6,D)6,5,4,5,6,参考答案:B(2025.9)29.有如下程序#include<stdio.h>#include<string.h>main(){chara[]="1234",*b="ABC";printf("%d,%d,%d,%d\n",strlen(a),sizeof(a),strlen(b),sizeof(b));}程序运行后的输出结果是A)4,5,1,3B)4,3,2,1C)4,5,3,3D)4,5,3,4参考答案:D(2025.9)30.有以下程序#include<stdio.h>int*sum(intdata){staticintinit=1;init+=data;return&init;}main(){inti,*p;for(i=1;i<=3;i++)sum(i);p=sum(1);printf("%d\n",*p);}程序运行后的输出结果是A)8B)9C)10D)7参考答案:A(2025.9)31.以下对C语言函数的叙述中正确的是A)调用函数时,只能把实参的值传给形参,形参的值不能传给实参B)函数既能嵌套定义,又能递归定义C)函数必须有返回值,否则不能使用D)程序中有调用关系的所有函数必须放在同一个源程序中参考答案:A(2025.9)32.有以下程序#include<stdio.h>#defineS(x)x/x*xmain(){intk=6,j=3;printf("%d,%d\n",S(k+j),S(j+k));}程序运行后的输出结果是A)27,27B)9,9C)27,29D)29,29参考答案:C(2025.9)33.若有定义typedefint*T;T*a[20];则以下与上述定义中a类型完全相同的是A)int**a[20];B)int(*a)[20];C)int*(*a)[20];D)int*a[20];参考答案:A(2025.9)34.设有以下程序段structperson{floatweight;charsex;charname[10];}rec,*ptr;ptr=&rec;从键盘读入字符串给结构体变量rec的name成员,错误的输入语句是A)scanf("%s",rec->name);B)scanf("%s",);C)scanf("%s",(*ptr).name);D)scanf("%s",ptr->name);参考答案:A(2025.9)35.有如下程序#include<stdio.h>structpair{intfirst,second;};structpairget_min_max(int*array,intlen){inti;structpairres;res.first=array[0];res.second=array[0];for(i=1;i<len;i++){if(array[i]<res.first)res.first=array[i];if(array[i]>res.second)res.second=array[i];}returnres;}main(){intarray[6]={19,21,3,4};structpairmin_max=get_min_max(array,6);printf("min=%d,max=%d\n",min_max.first,min_max.second);}程序运行后的输出结果是A)min=0,max=6B)min=1,max=20C)min=1,max=19D)min=0,max=21参考答案:D(2025.9)36.有以下程序#include<stdio.h>main(){inti;FILE*fp;for(i=0;i<3;i++){fp=fopen("res.txt","w");fputc('K'+i,fp);fclose(fp);}}程序运行后,在当前目录下会生成一个res.txt文件,其内容是A)EOFB)MC)KLMD)L参考答案:B(2025.9)37.有如下定义structst{intn;floatt;}a[20];FILE*fp;若文件已正确打开,则以下将文件内容读入数组a中的语句错误的是A)for(i=0;i<20;i++)fread(a[i],sizeof(structst),1L,fp);B)fread(a,sizeof(structst),20L,fp);C)for(i=0;i<20;i+=2)fread(&a[i],2*sizeof(structst),1L,fp);D)for(i=0;i<20;i++,i++)fread(&a[i],sizeof(structst),2L,fp);参考答案:A(2025.9)38.有以下程序段intm=33,n=66;m=m^n;n=n^m;m=m^n;执行上述语句后,m和n的值分别是A)m=66,n=66B)m=33,n=66C)m=66,n=33D)m=33,n=33参考答案:C(2025.9)39.有以下程序#defineOut(n)n%2==0?"%c":"%d"#include<stdio.h>main(){intx;for(x=65;x<69;x++)printf(Out(x),x);}程序的运行结果是A)ABCDB)A66C68C)65666768D)65B67D参考答案:D(2025.9)40.有如下定义structst{intx;floaty;}rec,*px;若要使指针px指向rec的成员x,正确的赋值语句是A)px=(structst*)&rec.x;B)px=(structst*)rec.x;C)px=&rec.x;D)*px=rec.x;参考答案:A2025年全国计算机二级等级考试全真模拟试卷及答案(四)(2025.9)1.面向对象方法中,实现对象的数据和操作结合于统一体中的是A)结合B)封装C)隐藏D)抽象参考答案:B2.在进行逻辑设计时,将E-R图中实体之间联系转换为关系数据库的A)关系B)元组C)属性D)属性的值域参考答案:A3.线性表的链式存储结构与顺序存储结构相比,链式存储结构的优点有A)节省存储空间B)插入与删除运算效率高C)便于查找D)排序时减少元素的比较次数参考答案:B4.深度为7的完全二叉树中共有125个结点,则该完全二叉树中的叶子结点数为A)62B)63C)64D)65参考答案:B5.下列叙述中正确的是A)所谓有序表是指在顺序存储空间内连续存放的元素序列B)有序表只能顺序存储在连续的存储空间内C)有序表可以用链接存储方式存储在不连续的存储空间内D)任何存储方式的有序表均能采用二分法进行查找参考答案:C6.参考答案:C7.计算机软件包括A)算法和数据B)程序和数据C)程序和文档D)程序、数据及相关文档参考答案:D8.下面描述中不属于软件需求分析阶段任务的是A)撰写软件需求规格说明书B)软件的总体结构设计C)软件的需求分析D)软件的需求评审参考答案:B9.当数据库中数据总体逻辑结构发生变化,而应用程序不受影响,称为数据的A)逻辑独立性B)物理独立性C)应用独立性D)空间独立性参考答案:A10.A)并B)投影C)交D)选择参考答案:A11.以下叙述正确的是A)C编译程序把文件后缀为.c的源程序文件编译成文件后缀为.obj的二进制文件B)C编译程序把文件后缀为.c的源程序文件编译成文件后缀为.exe的可执行文件C)C编译程序把文件后缀为.obj的二进制文件编译成文件后缀为.exe的可执行文件D)链接程序把文件后缀为.c的源程序文件链接成文件后缀为.exe的可执行文件参考答案:A12.以下叙述正确的是A)循环结构、选择结构、顺序结构都是结构化程序的基本结构B)计算机可以直接执行C语言程序,不需要做任何转换C)过于复杂的算法不能使用N-S流程图描述D)只有不超过20步操作步骤的算法才是简单算法参考答案:A13.有如下程序#include<stdio.h>main(){intx=072;printf("X=%d.\n",x+1);}程序运行后的输出结果是A)X=115B)X=73C)X=59.D)X=72.参考答案:C14.下面叙述正确的是A)任何复杂任务都可以分解成简单子任务B)C语言程序的所有函数只能处于同一个源文件中WErC)包含全部三种基本结构的程序才是结构化程序D)C语言程序可以定义多个不同内容的main函数参考答案:A15.以下叙述正确的是A)C程序总是以main()作为程序执行的起始行B)main()函数若不带参数,其后面的一对圆括号可省略C)函数体内的定义语句和可执行语句允许任意穿插出现D)C语言中的语句之间必须用分号作为分隔符参考答案:A16.有以下程序#include<stdio.h>main(){charc;for(;(c=getchar())!='#';)putchar(++c);}执行时如输入为:abcdefg##<回车>,则输出结果是A)abcdefgB)bcdefgh$C)bcdefgh$$D)bcdefgh参考答案:D17.有以下程序#include<stdio.h>main(){inta=1,b=0;for(;a<5;a++){if(a%2==0)break;continue;b+=a;}printf("%d\n",b);}程序运行后的输出结果是A)0B)1C)10D)4参考答案:A18.有以下程序#include<stdio.h>main(){intx=0x13;if(x=0x12)printf("True");printf("False\n");}程序运行后的输出结果是A)TrueB)TrueFalseC)FalseD)TrueFalseTrue参考答案:B19.为了避免在嵌套的if-else语句中产生二义性,C语言规定与else子句配对是A)与其在同一行上的if子句B)在其之后最近的不带else的if子句C)与其缩排位置相同的if子句D)在其之前最近的不带else的同层if子句参考答案:D20.有以下程序#include<stdio.h>main(){inti,a;for(i=0;i<=10;i++)a=i;printf("%d,%d\n",i,a);}程序的运行结果是A)11,10B)10,10C)10,11D)11,11参考答案:A21.有以下程序#include<stdio.h>voidfun(inta[],intn){inti=0;for(i=0;i<n;i++){if(i%2==0)a[i]+=n;}}main(){intc[5]={5,4,3,2,1},i;fun(c,5);for(i=0;i<5;i++)printf("%d,",c[i]);printf("\n");}程序运行后的输出结果是A)10,-1,8,-3,6,B)5,4,3,2,1,C)10,2,8,4,6,D)5,-1,3,-3,1,参考答案:A22.有以下程序#include<stdio.h>#defineN4voidfun(inta[][N]){inti;for(i=0;i<N;i++)a[0][i]=a[N-1][N-1-i];}main(){intx[N][N]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}},i;fun(x);for(i=0;i<N;i++)printf("%d,",x[i][i]);printf("\n");printf("\n");}程序运行后的输出结果是A)16,6,11,16,B)1,6,11,16,C)4,7,10,13,D)17,17,17,17,参考答案:A23.有如下程序#include<stdio.h>intconvert(int*data){return(*data)++;}main(){intdata=56;convert(&data);printf("%d,",data);data=convert(&data);printf("%d,\n",data);}程序运行后的输出结果是A)56,57,B)57,58,C)57,57,D)55,57,参考答案:C24.设有如下程序段inta[1]={0};intb[]={9};charc[3]={"A","B"};chard="12";以下叙述正确的是A)a,b的定义合法,c,d的定义不合法B)a,b,c,d的定义都是合法的C)a,b,c的定义是合法的,d的定义不合法D)只有a的定义是合法的参考答案:A25.设有定义:intx=2,*p=&x;floaty=3.0;charz='c';,则立即进行以下运算有安全隐患的是A)p++;B)x++;C)y++;D)z++;参考答案:A26.有以下程序#include<stdio.h>doublefun(doublea){doublex;x=a-(int)a;returnx;}main(){doublea=3.1415;printf("%f\n",fun(a));}程序的运行结果是A)3.000000B)3.141500C)0.141500D)0.000000参考答案:B27.有以下程序#include<stdio.h>#include<string.h>char*a="you";char*b="WelcomeyoutoBeijing!";main(){char*p;p=b;while(*p!=*a)p++;p+=strlen(a)+1;printf("%s\n",p);}程序运行后的输出结果是A)Beijing!B)youtoBeijing!C)WelcomeyoutoBeijing!D)toBeijing!参考答案:D28.有如下程序#include<stdio.h>#include<string.h>main(){printf("%d\n",strlen("0\t\nA011\1"));}程序运行后的输出结果是A)8B)9C)7D)10参考答案:A29.有如下程序#include<stdio.h>intsum(intdata){staticintinit=1;returninit+=data;}main(){inti;for(i=1;i<=1;i++)printf("%d,",sum(i));printf("\n");}程序运行后的输出结果是A)2,B)2,3,C)3,D)1,参考答案:A30.有以下程序#include<stdio.h>main(){chars1[]="programe",s2[]="Language";char*p1=s1,*p2=s2;intk;for(k=0;k<8;k++)if(*(p1+k)==*(p2+k))printf("%s\n",(p1+k));}程序的运行结果是A)grameameeeB)gaeC)programeD)无输出字符参考答案:A31.以下针对全局变量的叙述错误的是A)全局变量的作用域是从定义位置开始至源文件结束B)全局变量是在函数外部任意位置上定义的变量C)用extern说明符可以限制全局变量的作用域D)全局变量的生存期贯穿于整个程序的运行期间参考答案:C32.有以下程序#include<stdio.h>#include<string.h>typedefstructstu{#include<string.h>t
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 特许金融分析师考试重要文献试题及答案
- 2025届山东省济宁市泗水县实验中学高三下学期一模考试地理模拟试题(解析版)
- 食品安全示范单位创建
- 教育学与人的发展
- 2024年特许金融分析师考试在线备考资源试题及答案
- 特许金融分析师复习重点试题及答案
- 预防术后呕吐护理措施
- 2024年CFA学习心得体会试题及答案
- CFA学员交流与分享试题及答案
- 实战经验分享的CFA试题及答案
- 校园定向越野(教案) 体育五至六年级
- 中国子宫内膜增生管理指南(2022)解读
- 木工内架合同范本
- 污水处理站操作人员安全培训手册
- 2024年济宁市惠达投资有限公司招聘笔试冲刺题(带答案解析)
- 2024内蒙古自治区公务员考试数量关系专项练习题含答案(巩固)
- 2024年山西林业职业技术学院单招职业技能测试题库附答案
- 安全生产责任制考核制度和考核表(完整版)
- 旅游概论(刘伟主编)(全国高职高专旅游类“十二五”示范教材) 全套课件(上)
- 19J102-1 19G613混凝土小型空心砌块墙体建筑与结构构造
- 女职工权益保护
评论
0/150
提交评论