《2014年10月自学考试02243《计算机软件基础(一)》试题和答案.docx》由会员分享,可在线阅读,更多相关《2014年10月自学考试02243《计算机软件基础(一)》试题和答案.docx(8页珍藏版)》请在第一文库网上搜索。
1、2014年10月高等教育自学考试计算机软件基础(一)试题课程代码:02243一、单项选择题1 .下列C语言变量初始化正确的是(D)A.intx=5;y=6;B.charch1=a;C.charchi=ch2=b,D.f1oata=25.0.b,c=0.5;2 .已知:inta=5:f1oatx=0.3,y=5.2;,则表达式x-a%3*(int)(x+y)的值是(C)A.-0.3B.-4.7C.-9.7D.-103 .C语言中,与语句Whi1e(M)括号中表达式等价的是(A)A.!(M=O)B.M=IC.M=OD0M!=14 .已知:charch=(abcdw,则Ch数组的长度为(D)A.()
2、B.1C.4D.55 .下列叙述中正确的是(B)A. C语言源程序中主函数和其它函数可以相互调用旷B. 一个C源程序至少包括一个主函数。C. C语言中函数允许嵌套定义,也就是一个函数内部可以再定义其他函数。D. C语言中不允许嵌套调用,也就是在调用一个函数的过程中,不允许再调用另一个函数。6 .执行如下语句后,*(xp+2)的值为(C)intx=(2,5,6,8,*xp;xp=x:A.2B.5C.6D.87 .有如下定义:structHostX:char*y;a4=(2.0“mmm,5,1kkk”,(8.4qqq),12.4vvvw*p=a;则下列引用中不正确的是(A)A.p=&(aO.x)B
3、.(p+)-yC.(*p).XD.p=&a28 .在数据结构中,数据的基本单位,称之为(B)A.数据值B.数据节点C.数据项D.逻辑结构9 .循环单链走的节点定义为:structnodedatatypedata;structnode*next;*rear:该循环链表带表头节点,rear指向循环单链表的最后一个节点,该链表的第一个数据节点是(C)C.rear-next-nextD.head-next10 .二维数组M中,每个元素的存储占5个单元,行下标i从0到7,列下标从。到9,该数组以列为主序存放,从首地址SA开始存放,元素M26的起始地址是(B)A.SA+100B.SA+250C.SA+48
4、0D.SA+64011 .具有3个节点的二叉树的所有不同形态的个数是(D)A.2B.3C.4D.512 .在任何一个有向图中,结点的出度总和和入度总和的关系是(C)A.入度总和出度总和B.入度总和出度总和C.入度总和=出度总和D.不确定13 .在有序表1,347,9,11,15上进行折半查找值为3的数据元素需要比较的次数为(B)A.1B.2C.4D.514 .设初始序列为5,7,4,3,8,6,执行第一趟直接插入排序算法后得到的序列为(D)A.3,4,5,6,7,8B.5,4,3,7,8,6C.5,4,3,7,6,8D.5,7,4,3,8,615 .数据流图是下列软件工程哪个阶段的描述工具(A
5、)A.需求分析阶段B.软件设计阶段C.软件编码阶段D.软件维护阶段二、填空题16 .在C语言的循环体中,若遇到也毁匕语句时,则立即结束整个循环。17 .C语言中利用函数的实参和形参的结合来传递数据的方式有2种,分别是:单向值传递方式、也址传递方式,18 .线性表中数据节点的个数称为线性表的19 .队列中插人数据节点的那一端称为队尾.20 .任意一棵二叉树中,若叶子节点个数为m,度为2的节点个数为n,则m和n之间的数学关系表达式为m=n+1。21 .具有n个顶点的完全有向图中,弧(边)的个数为n(n-1)。22 .一棵二叉排序树中序遍历的结果是所有节点按关键字值递增有序23 .排序方法的性能指标
6、有3个,分别是:时间复杂度、空间复杂度和里定性24 .软件工程中,软件由程序、数据和文档三个部分组成。25 .在软件工程生存周期中,软件定义阶段包括:问题定义、可行性研究和需求分析三个子阶段。三、简答题26 .已知一棵树的边的集合表示为:(B,D),(C,G),(D,H),(D,I),(A,B),(A,C),(B,E),(B,F)(1)画出对应的树;(2)将该树转化为二叉树。答2603(2)27.根据题27图:(1)给出该图各顶点的度:(2)给出邻接表存储示意图。(0X度=2匕度=2丫3度=3V4度=1(2)各节点的顺序可以不同,以下只是参考答案:答27图28.给定序列11,9,12,87,3
7、3,98,(1)构造二叉排序树:(2)计算该二叉排序树查找成功情况下的平均查找长度。11答28图AS1=色2x2+3x1+4x2J*6329 .给定序列(22,82,45,56,90,3,59,35)按升序进行排序,(1)给出直接选择排序的第1趟和第2趟结果;(2)给出冒泡排序的第1趟和第2趟结果。答:(1)3,82,45,56,9022,59,353,22,45,56.90,82,59,3522,45,56,82,359,35,9022,45,56,3,59,35,82,90四、程序分析题30 .写出下列程序的运行结果。#inc1udevoidmain()(intj,a1=12,22,9,3
8、4819,5,23,33,99),p1=feaJO.p2=fea9;if(*p1*p2)p1=a9;p2=aO;for(j=1;j*p1)(p1=&ajcontinue;if(ak(j*p2)p2:&aj;)prinff(%5d,%5d,*p1,*p2);)运行结果:99.531 .写出下列程序的运行结果。#inc1udevoidfun(inta,intk)(inim=0,n=k-1,temp;whi1e(man)(temp=am;am=a(n;an=temp;)m+;n-;)voidmain()in(a6=12,52.9,34,18,3,k=6;fun(a,k);for(k=O;k6;k+)
9、printf(%5d,ak);运行结果:3J8934.52J2,32 .下面程序的功能是:输入十六进制数,转换为十进制数,并输出。填空完成程序。#inc1udevoidmain()chara9;intx=0.i=0;scanf(%s,a);Whi1e(if(x=x*16+ai)-,0;e1sex=x*16+ai-,A,+10;i+;)printf(%d,x);答: ai!=,0, ai=,0,Minext!=NU11.)p=p-next;free(q):returnhead1;)答:*q=head2p-next=q-next五、程序设计题34 .编写C语言程序实现:有10本图书,每本图书的数据
10、有:书号、价格:从键盘上输入10本图书的数据;计算10本书的平均价格并输出;统计所有高于平均价格的图书数量并输出这些图书的数据。答:#inc1udevoidmain()IStIUCtIintno;f1oatprice;book10;inti;f1oatq)=0tavp,sgp0;for(i=0ji10ji+)/输入图书数据并统计总价格*/Iscanf(w%d%f,&booki.no,&booki.price);SP=SP+booki.price;Iavp=sp10;printf(图书的平均价格为:%F,avp);Printf(统计高于平均价格的图书数量并输出“);f(i=0;iavp)ISgP
11、+jprintf(%d%Antbooki.no,booki.price);Printf(高于图书的平均价格的图书共:d,gp);135 .设二叉树采用二叉链表存储结构,要求:定义采用该存储结构的数据节点的数据类型;并用C语言编写一个递归函数,计算给定二叉树的高度。答:typedefstructnodedatatypedata;stxuctnode!chi1d,*rchi1d;jBitnode;inthei曲t(Bitnodebt)Jinth1,hr;if(bt=NU11)return0;if(bt-!chi1d=NU11&bt-rchi1d=NU11)return1;h1=heit(bt-!chi1d);hr=height(bt-rchi1d);if(h1hr)returnh1+1;returnhr+1;