版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
全国计算机二级C选择题题库第35套全国计算机二级C选择题题库第35套全国计算机二级C选择题题库第35套xxx公司全国计算机二级C选择题题库第35套文件编号:文件日期:修订次数:第1.0次更改批准审核制定方案设计,管理制度全国计算机二级C选择题题库第35套全国计算机二级C选择题题库第35套1、下列叙述中正确的是A)程序可以作为算法的一种表达方式B)算法的有穷性是指算法的规模不能太大C)算法的复杂度用于衡量算法的控制结构D)算法的效率与数据的存储结构无关参考答案:A算法的有穷性是指操作步骤有限且能在有限时间内完成,如果一个算法执行耗费的时间太长,即使最终得出了正确结果,也是没有意义的。B选项错误。一个算法复杂度的高低体现在运行该算法所需要的计算机资源的多少。C选项错误。算法的效率是指算法执行的时间,算法执行时间需通过依据该算法编制的程序在计算机上运行时所消耗的时间来度量,这就与算法本身设计的优劣以及具体的编程实现有关,数据的存储结构会极大的影响程序的执行时间。D选项错误。算法在实现时需要用具体的程序设计语言来实现,所以程序可以作为实现算法的一种表达方式。故选A选项。2、某循环队列的存储空间为Q(1:m),初始状态为front=rear=m。现经过一系列的入队操作和退队操作后,front=m-1,rear=m,则该循环队列中的元素个数为A)m-1B)1C)mD)0参考答案:B循环队列长度为m,由初始状态为front=rear=m可知此时循环队列为空。入队运算时,首先队尾指针(rear)进1(即rear+1),然后在rear指针指向的位置插入新元素。特别的,当队尾指针rear=m+1时,置rear=1。退队运算时,排头指针(front)进1(即front+1),然后删除front指针指向的位置上的元素,当排头指针front=m+1时,置front=1。从排头指针front指向的后一个位置直到队尾指针rear指向的位置之间所有的元素均为队列中的元素,则该循环队列中的元素个数为m-(m-1)=1。故选择A选项。3、能从任意一个结点开始没有重复地扫描到所有结点的数据结构是A)循环链表B)双向链表C)二叉链表D)有序链表参考答案:A在单链表的第一个结点前增加一个表头结点,队头指针指向表头结点,最后一个结点的指针域的值由NULL改为指向表头结点,这样的链表称为循环链表。在循环链表中,只要指出表中任何一个结点的位置,就可以从它出发没有重复地扫描到表中其他所有的结点。双向链表与二叉链表都可以扫描到所有结点,但是会有重复。有序链表如果是单链表的情况下,不能扫描到所有结点。故A选项正确。4、某棵树中共有25个结点,且只有度为3的结点和叶子结点,其中叶子结点有7个,则该树中度为3的结点数为A)不存在这样的树B)7C)8D)6参考答案:A树是一种简单的非线性结构,直观地来看,树是以分支关系定义的层次结构。在树结构中,一个结点所拥有的后件个数称为该结点的度,所有结点中最大的度称为树的度。首先假设这样的树是存在的,由于只有度为3的结点和叶子结点,可知最后一层都为叶子结点,倒数第二层一部分结点的度为3,一部分结点为叶子结点。结点总数为25,叶子结点有7个,则度为3的结点有18个,由于(34-1-1)/2<18<(35-1-1)/2可知,树共有5层,前三层有度为3的结点(34-1-1)/2=13个,第四层有34-1=27个结点,其中5个是度为3的结点,22个是叶子结点,此时与题目给出的叶子结点有7个相矛盾,故不存在这样的树。故选择A选项。5、在最坏情况下,二分查找法的时间复杂度为A)B)C)D)参考答案:C二分法查找也称拆半查找,能使用二分法查找的线性表必须满足两个条件,用顺序存储结构以及线性表有序。利用二分法查找元素X的过程如下:将X与线性表的中间项比较,如果X的值与中间项的值相等,则查找成功,结束查找;如果X小于中间项的值,则在线性表的前半部分以二分法继续查找;如果X大于中间项的值,则在线性表的后半部分以二分法继续查找。可以证明,对于长度为n的有序线性表,在最坏情况下,二分法查找需比较次,故时间复杂度为。故选择A选项。6、某二叉树共有730个结点,其中度为1的结点有30个,则叶子结点个数为A)不存在这样的二叉树B)351C)1D)350参考答案:A在树结构中,一个结点所拥有的后件个数称为该结点的度,所有结点中最大的度称为树的度。对任何一棵二叉树,度为0的结点总是比度为2的结点多一个。如果有一棵二叉树,结点总数为730,假设度为0的结点个数为n,则有n+30+n-1=730,n=,由于结点个数必须是整数,所以不可能存在题目中这样的二叉树。故选A选项。7、软件开发中需求分析的主要任务是A)定义和描述目标系统"做什么"B)获取需求C)给出软件解决方案D)需求评审参考答案:A需求分析阶段的工作可以分为4个方面:需求获取、需求分析、编写需求规格说明书和需求评审。需求分析的任务是发现需求、求精、建模和定义需求的过程,是描述"做什么"的软件开发阶段。故选A选项。8、软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。下面属于系统软件的是A)学生成绩管理系统B)ERP系统C)办公自动化系统D)UNIX系统参考答案:D系统软件是管理计算机的资源,提高计算机的使用效率,为用户提供各种服务的软件。应用软件是为了应用于特定的领域而开发的软件。选项A属于系统软件,选项B、C、D属于应用软件。故选D选项。9、医生可以为病人开不同的药,而同一种药也可由不同医生开给病人,则实体医生和实体药之间的联系是A)多对多B)一对一C)多对一D)一对多参考答案:A实体集之间通过联系来建立联接关系分为三类:一对一联系(1:1)、一对多联系(1:m)、多对多联系(m:n)。由于医生可以为病人开不同的药,而同一种药也可由不同医生开给病人,所以两者的联系属于多对多。故选A选项。10、学生选课成绩表的关系模式是SC(S#,C#,G),其中S#为学号,C#为课号,G为成绩,检索课号为2且成绩及格的学生学号的表达式为A)B)C)D)参考答案:A表示针对属性进行的投影运算,表示针对元组进行的选择运算,''表示交运算,''表示并运算。要求检索结果为关系模式中的学生学号S#,首先在几种属性中选择学生学号,其次要在其中选择满足条件的元组,条件是课号为2且成绩及格,即为"",故完整表达式为。本题选A选项。11、若想定义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;参考答案:AC语言赋值运算符的结合方向是从右向左,使用的变量必须都是已经定义了的,inta=b=c=d=1;本条语句首先执行赋值运算d=1,由于b并未定义,故编译不通过,提示没有定义标识符b、c、d,故A项错误。答案为A选项。12、若有定义: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);参考答案:B%lf是针对double的,如果仅用%f,输入的数据可能没有被完全接收,数据的精度可能不足,选项C,D错误。%f主要针对float类型的变量的输入。%d主要针对整型数据的输入,%c主要针对字符类型的数据的输入,选项A错误。故答案为B选项。13、输出语句:printf("%d\n",11+011);的输出结果是A)20B)22C)022D)021参考答案:Aprintf("%d\n",11+011)中,11为十进制,011为八进制形式,打印格式%d表示十进制格式输出,,因此,先将八进制数转化为十进制,011(8)=81*1+1*80=9,相当于printf("%d\n",11+9),故答案为20,A选项正确。14、以下叙述正确的是A)有些算法不能用三种基本结构来表达B)C语言程序不编译也能直接运行C)结构化程序的三种基本结构是循环结构、选择结构、顺序结构D)如果C语言程序实现的算法很简单,则计算机不进行任何代码转换就能执行程序参考答案:C算法的三种基本结构可以表达任何算法,只是不同的实现复杂度不相同。因此选项A错误。C语言是编译型语言,程序必须先编译、链接才能运行,因此选项B错误。C语言是高级程序语言,计算机不能识别除了机器语言以外的任何语言,因此C程序代码转换为机器语言才能在计算机上运行。因此选项D错误。答案为C选项。15、若有定义:doublex;,则表达式:x=0,x+10,x++的值是A)B)C)D)参考答案:CC语言中,逗号运算符可以把两个以上(包含两个)的表达式连接成一个表达式。逗号运算符的优先级是所有运算符中级别最低的,逗号运算符保证左边的子表达式运算结束后才进行右边的子表达式的运算。也就是说,逗号运算符是一个序列点,其左边所有副作用都结束后,才对其右边的子表达式进行运算,并以最右边表达式值作为整个逗号表达式的值。1、后置自增运算:k++表示先运算,后自加。2、前置自增运算:++k表示先自加,后运算。因此,表达式x=0,x+10,x++的计算过程为首先赋值x=0,然后将x加10,但是并不对x进行赋值,最后计算x++,并,根据后置自增运算的计算结果,即为x=。,故答案为C选项。16、有以下程序#include<>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参考答案:BC语言还提供了一种用于多分支选择的switch语句,计算表达式的值。并逐个与其后的常量表达式值相比较,当表达式的值与某个常量表达式的值相等时,即执行其后的语句,然后不再进行判断,继续执行后面所有case后的语句。如表达式的值与所有case后的常量表达式均不相同时,则执行default后的语句。x=1;进入第一层switch,y=0;进入第二层switch,执行a++;break;后a=1;在进入case2,(这里case1:没有break,)执行了a++,b++,由于存在break,则跳出switch,得到a=2,b=1,因此答案为B选项。左边所有副作用都结束后,才对其右边的子表达式进行运算,并以最右边表达式值作为整个逗号表达式的值。1、后置自增运算:k++表示先运算,后自加。2、前置自增运算:++k表示先自加,后运算。因此,表达式x=0,x+10,x++的计算过程为首先赋值x=0,然后将x加10,但是并不对x进行赋值,最后计算x++,并,根据后置自增运算的计算结果,即为x=。,故答案为C选项。17、以下程序段中的变量已正确定义for(i=0;i<4;i++,i++)for(k=1;k<3;k++);printf("*");该程序段的输出结果是A)*B)****C)**D)********参考答案:AC语言约定分号为一条语句的结束。因此for(i=0;i<4;i++,i++)for(k=1;k<3;k++);是完整的语句,对printf();没有任何影响,最后printf("*"),执行一次。因此答案为A选项。18、有以下程序#include<>main(){charc;for(;(c=getchar())!='#';){if(c>='a'&&c<='z')c=c-'a'+'A';putchar(++c);}}执行时输入:aBcDefG##<回车>,则输出结果是A)AbCdEFgB)ABCDEFGC)BCDEFGHD)bcdefgh参考答案:C循环的作用是将输入的字符串转化为大写,getchar()每次读入一个字符,putchar()每次输出一个字符,当遇到#字符结束。putchar(++c),表示将字符变量c加1后输出。因此,输入aBcDefG##,得到的结果是BCDEFGH。故答案为C选项。19、有以下程序#include<>intf(intx);main(){intn=1,m;m=f(f(f(n)));printf("%d\n",m);}intf(intx){returnx*2;}程序运行后的输出结果是A)4B)2C)8D)1参考答案:C在C语言中,需要在main函数后面定义函数,需要提前声明,否则调用报错,无法找到该函数。m=f(f(f(n))),一共调用3次f()函数,f()函数是对n*2,因此,结果是n*2*2*2,得到结果为8。故答案为C选项20、关于地址和指针,以下叙述正确的是A)可以通过强制类型转换让char型指针指向double型变量B)函数指针p指向一个同类型的函数f时,必须写成:p=&f;C)指针p指向一个数组f时,必须写成:p=&f;D)一个指针变量p可以指向自身参考答案:A函数指针p指向一个同类型的函数f时,可以写成:p=f,而不能写成&f,选项B错误。函数名代表函数的入口地址,指针p指向一个数组f时,可以写成:p=f,也可写成&f,数组名f,可以代表数组的首地址,选项C错误。指针变量指向的是地址,是个常量,不能将地址指向另一个地址,选项D错误。char型根据转化原则可以转化为double类型,因此答案为A选项。21、有以下程序#include<>#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;y=fun(x);printf("%d\n",y);}程序运行后的输出结果是A)34B)35C)28D)59参考答案:Afun函数求矩阵反对角线的元素之和。根据fun()函数,当数组的行列下标相等时,对该行反对角线上的元素求和。故结果为4+7+11+13=34,答案为A选项。22、有以下程序#include<>#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)7D)9参考答案:Cfun()获取矩阵正反对角线的元素的最大值,fun()中for(i=0;i<N;i++){j=N-(i+1);/a[0].x*a[1].x);}程序运行后的输出结果是A)1B)4C)0D)3参考答案:C由结构体的定义同时初始化可知,a[0].x=4,a[0].y=3,a[1].x=2,a[1].y=1,因此计算a[0].y/a[0].x*a[1].x=3/4*2=(3/4)*2=0*2=0,故答案为C选项。33、以下选项中的编译预处理命令行,正确的是A)#defineEB)##definePI_2C)#defineintINTD)#DEFINETRUE参考答案:A无参宏定义格式:#define标识符字符串,标识符与C语言规定相同,因此,可知选项B,多了#,选项C使用c语言的关键字,选项D格式不对。因此答案为A选项。34、设有以下程序段structbook{floatprice;charlanguage;chartitle[20];}rec,*ptr;ptr=&rec;要求输入字符串给结构体变量rec的title成员,错误的输入语句是A)scanf("%s",;B)scanf("%s",;C)scanf("%s",(*ptr).title);D)scanf("%s",ptr->title);参考答案:A"->"是指针特用的,"."用于指定元素的成员。ptr是指针,只能用->,因此选项A错误。*p是指定元素(rec)可以使用.运算,因此选项D正确。选项B,代表数组title,同理选项C正确。答案为A选项。35、有以下程序#include<>#include<>structcomputer{charCPU[10];};main(){structcomputerpc1,pc2;strcpy,"");strcpy,"");pc1=pc2;printf("%s\n",;}程序运行后的输出结果是A)B)C)D).2G参考答案:C二个类型相同的结构体,可以使用一个给另一个初始化,使它们相等。前提是右值结构体变量所有成员全部初始化了。pc1=pc2,pc2的成员值和pc1中对应的成员相等。因此输出。答案为C选项。36、有以下程序#include<>main(){inta=2,b;b=(a>>=1)+4;printf("%d,%d",a,b);}程序运行后的输出结果是A)1,5B)2,4C)2,6D)2,5参考答案:Aa>>=1等价于a=a>>1,即a除以2,则a=2,b=(a>>1)+4=1+4=5,因此,打印出来为1,5。答案为A选项。37、若要建立下图所示的存储结构,以下正确的程序段是()。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;D)char*q,*p,c;q=p;p=*c;参考答案:A由图示可知,c是个普
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 课题申报参考:金银绣艺术特征及其传承创新研究
- 二零二五版能源设施安全防护劳务分包协议3篇
- 二零二五版房地产开发经营项目环境保护合同范本3篇
- 2025年常州货运资格证在哪里练题
- 二零二五版毛竹砍伐与林业碳交易市场接入合同4篇
- 2025年光伏发电项目投资合作合同模板4篇
- 二零二五年度出租车公司车辆融资租赁合同5篇
- 二零二五年度农产品电商平台合作协议6篇
- 2025年度智能仓储物流系统承包经营协议书4篇
- 二零二五年度企业信用担保合同模板:降低融资风险2篇
- 课题申报书:GenAI赋能新质人才培养的生成式学习设计研究
- 骆驼祥子-(一)-剧本
- 全国医院数量统计
- 《中国香文化》课件
- 2024年医美行业社媒平台人群趋势洞察报告-医美行业观察星秀传媒
- 第六次全国幽门螺杆菌感染处理共识报告-
- 天津市2023-2024学年七年级上学期期末考试数学试题(含答案)
- 经济学的思维方式(第13版)
- 盘锦市重点中学2024年中考英语全真模拟试卷含答案
- 手卫生依从性调查表
- 湖北教育出版社四年级下册信息技术教案
评论
0/150
提交评论