版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
全国计算机二级C选择题题库第36套优选资料全国计算机二级C选择题题库第36套1、以下表达中正确的选项是算法复杂度是指算法控制构造的复杂程度算法复杂度是指设计算法的难度算法的时间复杂度是指设计算法的工作量算法的复杂度包括时间复杂度与空间复杂度参照答案:D算法的复杂度是指运行该算法所需要的计算机资源的多少,所需的资源越多,该算法的复杂度越高;反之,所需资源越少,复杂度越低。算法复杂度包括算法的时间复杂度和算法的空间复杂度,算法的时间复杂度是指执行算法所需要的计算工作量,算法空间复杂度指执行这个算法所需要的内存空间。应选择D选项。2、设循环队列的储藏空间为Q(1:50),初始状态为front=rear=50。现经过一系列入队与退队操作后,front=rear=1,此后又正常地插入了两个元素。最后该队列中的元素个数为21352参照答案:A循环队列是队列的一种序次储藏构造,用队尾指针rear指向队列中的队尾元素,用排头指针指向排头元素的前一个地址。循环队列长度为50,由初始状态为front=rear=50可知此时循环队列为空。入队运算时,第一队尾指针进1(即rear+1),尔后在rear指针指向的地址插入新元素。特其余,当队尾指针仅供学习与交流,如有侵权请联系网站删除感谢2优选资料rear=50+1时,置rear=1。退队运算时,排头指针进1(即front+1),尔后删除front指针指向的地址上的元素,当排头指针front=50+1时,置front=1。若经过运算,front=rear=1可知队列空也许队列满。此后又正常地插入了两个元素说明插入前队列为空,则插入后队列元素个数为2。应选A选项。3、一棵完好二叉树共有360个结点,则在该二叉树中度为1的结点个数为01180181参照答案:B在二叉树中,一个结点所拥有的后件个数称为该结点的度。完好二叉树指除最后一层外,每一层上的结点数均达到最大值,在最后一层上只缺少右边的若干结点。由定义能够知道,完好二叉树中度为1的结点个数为1也许0。若结点总数为偶数,则有1个度为1的结点;若结点总数为奇数,没有度为1的结点。由于题目中的完好二叉树共有360个结点,则度为1的结点个数为1。应选择B选项。4、设某二叉树的后序序列与中序序列均为ABCDEFGH,则该二叉树的前序序列为HGFEDCBAABCDEFGHEFGHABCDDCBAHGFE参照答案:A二叉树遍历能够分为3种:前序遍历(接见根结点在接见左子树和接见右子树从前)、中序遍历(接见根结点在接见左子树和接见右子树两者之间)、后序遍历(接见根结点在接见左子树和接见右子树此后)。仅供学习与交流,如有侵权请联系网站删除感谢3优选资料二叉树的后序序列与中序序列相同,说明此树结点没有右子树,且最后一个节点H为根节点,而前序遍历中根节点应在最先被接见,即节点H在最先出现,由此推断前序遍历为HGFEDCBA,故A选项正确。5、在排序过程中,每一次数据元素的搬动会产生新的逆序的排序方法是快速排序简单插入排序冒泡排序以上说法均不正确参照答案:A冒泡排序只交换相邻元素,但不是每次搬动都产生新的逆序。简单插入排序的元素搬动不会产生新的逆序。快速排序每一次交换搬动都会产生新的逆序,因为当不会有新的逆序产生时,本轮比较结束。应选择A选项。6、下面对软件工程描述正确的选项是软件工程是用工程、科学和数学的原则与方法研制、保护计算机软件的有关技术及管理方法软件工程的三要素是方法、工具和进度软件工程是用于软件的定义、开发和保护的方法软件工程是为认识决软件生产率问题参照答案:A软件工程是应用于计算机软件的定义、开发和保护的一整套方法、工具、文档、实践标准和工序。C选项表达不全面。仅供学习与交流,如有侵权请联系网站删除感谢4优选资料软件工程包括3个要素:方法、工具和过程。B选项错误。软件工程的目标是:在给定成本、进度的前提下,开发出拥有有效性、可靠性、可理解性、可保护性、可重用性、可适应性、可移植性、可追踪性和可互操作性且满足用户需求的产品,追求这些目标有助于提高软件产品的质量和开发效率,减少保护的困难。D选项错误。软件工程是用工程、科学和数学的原则与方法研制、保护计算机软件的有关技术及管理方法。故本题选A选项。7、耦合性和内聚性是对模块独立性胸襟的两个标准。以下表达中正确的选项是内聚性是指模块间互相连接的亲密程度提高耦合性降低内聚性有利于提高模块的独立性耦合性是指一个模块内部各个元素间互相结合的亲密程度降低耦合性提高内聚性有利于提高模块的独立性参照答案:D模块的独立程度能够由两个定性标准胸襟,一个是耦合性,用来衡量不相同模块互相间互相依赖(连接)的亲密程度。另一个是内聚性,用来衡量一个模块内部各个元素互相结合的亲密程度。一般来说,要求模块之间的耦合尽可能弱,即模块尽可能独立,且要求模块的内聚程度尽可能高。应选D选项。8、以下关于数据库系统的表达中正确的选项是数据库系统中数据的一致性是指数据种类一致数据库系统防备了所有冗余仅供学习与交流,如有侵权请联系网站删除感谢5优选资料数据库系统减少了数据冗余数据库系统比文件系统能管理更多的数据参照答案:C数据管理技术的发展经历了3个阶段:人工管理阶段、文件系统阶段和数据库系统阶段。数据库系统共享性大,冗余度小,但可是减少了冗余,其实不是防备所有冗余。数据的一致性是指在系统中同一数据在不相同地址的出现应保持相同的值,而不是数据种类的一致。数据库系统比文件系统有更强的管理控制能力,而不是管理更多的数据。故本题选C选项。9、一名演员能够出演多部电影,则实体演员和电影之间的联系是多对多一对一多对一一对多参照答案:A实体集之间经过联系来建立联接关系分为三类:一对一联系(1:1)、一对多联系(1:m)、多对多联系(m:n)。由于一名演员能够出演多部电影,而一部电影必定有多个演员参演,则实体演员和电影之间的联系属于多对多。应选A选项。仅供学习与交流,如有侵权请联系网站删除感谢6优选资料10、表S中所有学生都选修了的课程的课号所有课程的课号成绩不小于80的学生的学号所选人数很多的课程的课号参照答案:A表示针对属性进行的投影运算,"/"表示除运算,能够近似地看作笛卡尔积的逆运算。表达式表示,第一在关系模式SC中选择属性"学号"与"课号",结果以下左图。其次在这个关系模式中对关系模式S进行除运算,结果以下右图。则关系式结果表示S中所有学生(S1、S2)都选修了的课程的课号(C1、C2)。仅供学习与交流,如有侵权请联系网站删除感谢7优选资料πS#,C#(SC)/S的运算结果πS#,C#(SC)的运算结果故本题选A选项。11、有以下程序#include<stdio.h>main(){inta=2,b=3,c=4;a*=16+(b++)-(++c);printf("%d\n",a);}程序运行后的输出结果是15302814参照答案:C1、后置自增运算:k++表示先运算,后自加。2、前置自增运算:++k表示先自加,后运算。++单目运算符的优先级高于赋值运算符。a*=16+(b++)-(++c);可转变成:a=a*(16+b-(c+1));b=b+1;代入值计算可得值a=28。答案为C选项。12、以下表达正确的选项是经过分解成简单据任务,能够完成任何复杂任务每个构造化程序都要包括所有三种基本构造仅供学习与交流,如有侵权请联系网站删除感谢8优选资料C语言程序的所有自定义函数只能写在同一个源文件中C语言程序赞同使用多个main函数,只要它们的函数体各不相同即可参照答案:A算法的三种基本构造:循环、序次、条件。有的简单的程序只包括其中的若干个,因此B选项错误,C语言程序的自定义函数能够放在多个.c文件中,只要包含其引用的头文件即可链接到,因此选项C错误。C语言程序有且只有一个main函数,因此D选项错误。故答案为A选项。13、以下选项中,合法的C语言实数是E4.8.4e00.29E参照答案:CC语言"标准化指数形式":其数值部分是一个小数,小数点前的数字是零,小数点后的第一位数字不是零。一个实数能够有多种指数表示形式,但只有一种属于标准化指数形式。在C语言中e后边的指数必定是整数。因此只有C选项正确。14、设a,b,c已定义为整型变量,以下选项中不正确的赋值表达式是a=3=(b=2)=1;a=(b=0)*c+1;a=(b=0)*c+1;a=10%(b=c=2.0);参照答案:A依照()和=运算符的优先级,运算过程为b=2,b=1,此后3=1为非法赋值运算。,,C语言规定常量只能做为右值,不能够做左值,,因此选项A的表达式错误。仅供学习与交流,如有侵权请联系网站删除感谢9优选资料15、若变量已正确定义并赋初值,以下合法的赋值语句是k=(m==n);k=-m-nk=int(m+n);k=m*n=1;参照答案:Am,n的变量种类未知,但题目中已定义和赋值。选项B的-m-n关于整型与浮点数种类能够这样操作,但若变量为字符种类,则错误。选项C,编译种类错误,强制转变使用错误。选项D,m*n是常量,只能用作表达式的右值,不能够作为左值。故答案为A选项。16、以下关于逻辑运算符两侧运算对象的表达中正确的选项是A)只能是整数0或1B)只能是整数0或非0整数C)能够是构造体种类的数据D)能够是任意合法的表达式参照答案:D与运算符(&&)和或运算符(||)均为双目运算符,拥有左结合性。非运算符单目运算符,拥有右结合性。只若是合法的表达式,都能够作为逻辑运算表达的运算表达式。因此可知选项A,B,C错误。答案为D选项。
(!)为17、以下选项中错误的选项是printf("%s\n",'s');printf("%d%c\n",'s','s');printf("%c\n",'s'-32);printf("%c\n",65);参照答案:A仅供学习与交流,如有侵权请联系网站删除感谢10优选资料%d能够作为输出字符和整型种类的格式,%c作为输出字符种类的格式,%s作为输出字符串种类的格式,选项A,'s'是字符,不能够用%s格式来输出。故答案为A选项。18、如有定义:charch;当执行以下循环时从键盘输入abcde<回车>,将输出*的个数是while((ch=getchar())=='e')printf("*");4051参照答案:Bwhile((ch=getchar())=='e'),输入abcde,接收到的第一个字符是a,while循环的条件为0,跳出循环结束。因此printf没有执行过。因此,没有打印任何字符出来。故答案为B选项。19、有以下程序#include<stdio.h>main(){intx=10,y=11,z=12;if(y<z)x=y;y=z;z=x;printf("x=%dy=%dz=%d\n",x,y,z);}程序运行后的输出结果是x=11y=12z=11x=10y=10z=10x=11y=11z=10x=10y=10z=12参照答案:Aif条件为真,执行x=y;此时x=11;y=11;z=12仅供学习与交流,如有侵权请联系网站删除感谢11优选资料再执行y=z;z=x;此时y=12;z=11;最后x=11;y=12;z=11;故答案为A选项。20、关于if(表达式)语句,以下表达正确的选项是"表达式"不能够是变量"表达式"的值只能是整数值"表达式"能够是常量"表达式"中不能够够出现字符型变量的比较参照答案:CC语言没有规定if(表达式)中的"表达式"的形式,能够是任意合法表达式。故答案为C选项。21、有以下程序#include<stdio.h>main(){charch='1';while(ch<'9'){printf("%d",ch-'0');ch++;}}程序运行后的输出结果是123456780123456701参照答案:A仅供学习与交流,如有侵权请联系网站删除感谢12优选资料将字符转为数字,并输出打印的格式为%d,while循环从1-8,因此打印的结果是12345678。故答案为A选项。22、以下与表达式(!x==0)的逻辑值不等价的选项是x==1xx!=0x>0||x<0参照答案:A与==运算,!的优先级高于==,即等价于(!x)==0。若是x0,则表达式为真,否则表达式为假,因此能够考据选项,只有选项A不吻合。故答案为A选项。23、以下表达正确的选项是表达式9-'0'的值是数值9表达式'A'+32的值是字母A的ASCII码表达式'a'-32的值是字母a的ASCII码表达式9+'0'的值是字符9的ASCII码参照答案:D表达式9-'0'的值是数值9-48=-39,应选项A错误,表达式'A'+32的值是字母a的ASCII码,应选项B错误,表达式'a'-32的值是字母A的ASCII码,应选项C错误。故答案为D选项。24、有以下程序#include<stdio.h>intfun(intx,inty){if(x!=y)return((x+y)/2);elsereturn(x);}仅供学习与交流,如有侵权请联系网站删除感谢13优选资料main(){inta=4,b=5,c=6;printf("%d\n",fun(2*a,fun(b,c)));}程序运行后的输出结果是36812参照答案:Bfun函数的功能是获取二个数的平均数,注意平均数是整型数,小数会被截断。fun(2*4,fun(5,6))fun(8,5)6,因此答案为C选项。25、有以下程序#include<stdio.h>intf(intx,inty){return((y-x)*x);}main(){inta=3,b=4,c=5,d;d=f(f(a,b),f(a,c));printf("%d\n",d);}程序运行后的输出结果是81097参照答案:Cf(a,b)=f(3,4)=(4-3)*3=3;f(a,c)=f(3,5)=(5-3)*3=6;f(3,6)=(6-3)*3=9;因此,d=f(f(a,b),f(a,c))=9,答案为C选项。26、有以下程序#include<stdio.h>voidfun(inta[],intn,intflag){inti=0,j,t;仅供学习与交流,如有侵权请联系网站删除感谢14优选资料for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(flag){if(a[i]<a[j]){t=a[i];a[i]=a[j];a[j]=t;}}else{if(a[i]>a[j]){t=a[i];a[i]=a[j];a[j]=t;}}}main(){intc[10]={7,9,10,8,3,5,1,6,2,4},i;fun(c,4,1);fun(c+4,6,0);for(i=0;i<10;i++)printf("%d,",c[i]);printf("\n");}程序运行后的输出结果是7,8,9,10,6,5,4,3,2,1,10,9,8,7,6,5,4,3,2,1,10,9,8,7,1,2,3,4,5,6,1,2,3,4,5,6,7,8,9,10,参照答案:Cfun()函数作用冒泡法排序,flag控制升序(0)也许降序(1)。n为参加排序的个数。a为数组的初步地址。因此,fun(a,4,1),数组的前四个降序排序,fun(a+4,6,0)从数组的第四项,后六个升序排序。故结果为10,9,8,7,1,2,3,4,5,6。答案为C选项。27、有以下程序#include<stdio.h>intm1(intx,inty){if(x<=y)return2*x+1;elsereturny;}intm2(intx,inty)仅供学习与交流,如有侵权请联系网站删除感谢15优选资料{if(x<=y)return2*y+1;elsereturnx;}main(){inti,t1=10,t2=0;for(i=1;i<=4;i++){t1=m1(i,t1);t2=m2(i,t2);}printf("t1=%dt2=%d\n",t1,t2);}程序运行后的输出结果是t1=9t2=4t1=4t2=9t1=9t2=9t1=1t2=4参照答案:A函数m1(x,y),
若x<y,
返回2*x+1,否则返回y,
函数m2(x,y),
若x<=y,返回2*y+1,否则返回
x,for
循环对t1=m1(i,t1),
执行4次,可知答案为
9,t2=m2(i,t2),
执行4次,可知答案为
4,因此答案为A选项。28、有以下程序#include<stdio.h>voidf1(char*a,charb){charc;c=*a;*a=b;b=c;}voidf2(chara,charb){charc;c=a;a=b;b=c;}voidf3(char*a,char*b){charc;c=*a;*a=*b;*b=c;}main(){chart1,t2;t1='A';t2='B';f3(&t1,&t2);putchar(t1);putchar(t2);t1='A';t2='B';f2(t1,t2);putchar(t1);putchar(t2);t1='A';t2='B';f1(&t1,t2);putchar(t1);putchar(t2);printf("\n");}程序运行后的输出结果是ABBABBBAABBBBABABABABAAB参照答案:B仅供学习与交流,如有侵权请联系网站删除感谢16优选资料f1(*a,b),*a地址传达,b值传达,将b值传给*a,则f1(&t1,t2)调用后输出t1、t2为BB。f2(a,b)值传达,传入的可是a,b的拷贝,不实现交换,则f2(t1,t2)调用后输出t1、t2为AB。f3(*a,*b)为地址传达,能够实现a,b值的交换,则f3(&t1,&t2)调用后输出t1、t2为BA。因此结果为BAABBB。故答案为B选项。29、以下表达正确的选项是A)charc1,*c2,*c3[10];是合法的变量定义语句数组说明符的一对方括号中不能够使用表达式数组元素下标能够是非整数D)如有定义chararray[4];则语句printf("%c",array["3"]);是合法的参照答案:AC语言规定定义数组时,数组的长度必定是整型常量,数组说明符的一对方括号中表达式只若是常量即合法,因此选项B错误。C语言规定,数组元素下标必定是非负整数,因此选项C错误。选项Dchararray[4]数组的长度为4,array["3"],其中"3"常量字符串,与C语言规定数组的下标必定是非负整数不符,故答案为A选项。30、有以下程序#include<stdio.h>main(){inta[3][3]={{1,3,5,},{7,9,11,},{13,15,17}};int(*p)[3]=a,i,j,n=0;for(i=0;i<3;i++)for(j=0;j<2;j++)n+=*(*(p+i)+j);printf("%d\n",n);仅供学习与交流,如有侵权请联系网站删除感谢17优选资料}程序运行后的输出结果是54603648参照答案:Dfor循环的作用是求数组各行前二列的数字之和。*(*(p+i)+j)p[i][j]1+3+7+9+13+15=48,因此答案为D选项。31、设有定义:charp[]={'1','2','3'},*q=p;以下不能够计算出一个char型数据所占字节数的表达式是A)sizeof(*q)B)sizeof(char)C)sizeof(p)D)sizeof(p[0])参照答案:C变量p,q均是指针,因此sizeof(p)=4,而*p,*q,p[0]的种类都是char,因此长度为1,故A、D选项均正确。选项B,直接计算char的字节数也正确,故答案为C选项。32、有以下程序#include<stdio.h>fun(intx,inty){staticintm=0,i=2;i+=m+1;m=i+x+y;returnm;}main(){intj=1,m=1,k;k=fun(j,m);printf("%d,",k);k=fun(j,m);printf("%d\n",k);}仅供学习与交流,如有侵权请联系网站删除感谢18优选资料执行后的输出结果是5,115,511,1111,5参照答案:Astatic静态变量只在声明时初始化一次。因此m,n可是在第一个调用fun函数时初始化,第二次保持原来的只不变,不在进行初始化。因此第一次,可计算i=3,m=3+1+1=5,故打印为5,第二次i=4+5,m=9+1+1=11,故打印11。故答案为A选项。33、有以下程序#include<stdio.h>intf(intx[],intn){if(n>1)returnx[n-1]+f(x,n-1)*10;elsereturnx[0];}main(){intz[3]={1,2,3},y;y=f(z,3);printf("%d\n",y);}程序运行后的输出结果是32112313参照答案:Bf函数的作用是将int型数组构造成一个整型数。f函数采用递归的方式来实现,位数是递加的。有题设可知结果为123,因此输出结果为B选项。仅供学习与交流,如有侵权请联系网站删除感谢19优选资料34、有以下程序#include<stdio.h>#include<string.h>main(){charss[10]="12345";strcat(ss,"6789");gets(ss);printf("%s\n",ss);}执行时输入:ABC<回车>,则输出结果是123456ABCABC9ABCABC456789参照答案:Cgets(ss)读入一串字符串,直到遇到回车,读入的数据从数组的初步地址覆盖。数组s里的内容是ABC\056789\0,因此打印出ABC。故答案为C选项。35、有以下程序#include<stdio.h>#include<string.h>main(){printf("%d\n",strlen("0\t\n\0C011\1"));}程序运行后的输出结果是31310参照答案:AC语言转义字符是一个字符。字符串0\t\n\0C011,共有0,\t,\n三个字符。strlen()遇到\0计数结束,因此计数为3,故答案为A选项。仅供学习与交流,如有侵权请联系网站删除感谢20优选资料36、有以下程序#include<stdio.h>intshow(char*str){while(*str){putchar(*str+1);str++;}return*str+1;}main(){printf("%d\n",show("ABCD"));}程序运行后的输出结果是ABCD0BCDE0BCDE1ABCD1参照答案:Cputchar()每次输出一个字符,依照*str+1,因此ABCD每个字符都加1,最后'\0'=0,因此最后输出1,故答案BCDE1。故答案为C选项。37、有以下程序#include<stdio.h>voidmy_put(){charch;ch=getchar();if(ch!='C')my_put();putchar(ch);}
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 租房中介费合同范本3篇
- 全国赛课一等奖人教版数学六年级上册《位置与方向(二)描述简单的路线图》课件
- 铝电解槽2024年度购销合同
- 影视剧制片人聘用合同合同范本
- 物流转让合同2篇
- 2024年度建筑工程钢筋采购供应合同4篇
- 银行账户使用协议书
- 钢结构房屋工程保险服务合同(二零二四年度)3篇
- 建设工程设计合同协议书
- 公司管理人员聘用合同样本
- 2022年ISO9001-2015质量管理体系组织知识清单一览表完整版
- 国有企业薪酬专项审计报告
- 通用办公室文员劳务合同
- 小学美术-13《小导游》课件
- 外观检查记录表
- 急诊科临床诊疗常规技术操作规范
- 维修电工日巡检、修维记录表
- 菌糠的利用课件
- 华北理工大学中药学教案(64学时-田春雨)
- 四年级上册数学课件 -9.1 平均数 ︳青岛版(五四学制)(共21张PPT)
- 药品生产质量管理规范(2010版)(含13个附录)
评论
0/150
提交评论