1、天津大学版C+答案练习14 (1)5 (2)2 (3)1 (4)0 (5)1 (6)1 (7)9 (8)13 (9)1 (10)2 (11)5 (12)05 (1)D (2)D (3)B、C (4)C (5)C (6)C6k=22342201 (1) (2)5*68.1235-4.062(3)1234.51234(4)18第二章2. 阅读下列程序并写出运行结果(1) *(2) 6(3) S=11(4) 14(5) 执行该程序,当分别输入5238、316、24、0时,输出结果是: 5238 Sum=18 316sum=1024sum=60sum=0第三章2.阅读下列程序并写出运行结果(1) (2
2、)(3) (4)第四章2.写出以下程序的运行结果(1)(2)(3)(4)(5)(6)练习52. 单选题(1)A (2)A (3)D (4)C (5)A (6)A3写出以下程序的输出结果。(1)(2)4程序填空(1) jp 0 line%11=0 200 obj.Run()(2) long int myclass:sum=0 ob1 或 ob2 或 ob34.程序填空题(1)jnext;(3) len-i-1 A.ClearList(); 4算法设计题(1)void Seqlist:Reverse()char temp;for(int i=0;ilength/2;i+) temp= elemen
3、t i; element i= element length-1-i ; element length-1-i=temp; (2)解法1:void SeqList:Delitem(const char &item) char x; for(int i=0;ilength;i+) Find(i,x); if(x = item) Delete(i,x);i-; 解法2:void SeqList:Delitem(const char &item) int i,j; for(i=0;ilength;i+) if(elementi=item) for(j=i;jlength-1;j+) elementj
4、=elementj+1; length-; i-; (3) void SeqList :Half()char x;for(int i=0;ilength;i+) Delete(i,x);(4)解法1:增加一个成员函数Max()void Seqlist:Max(int & j , char &max)max=element0;int j=0;for (int i=1;imax) max=elementi; j=i;解法2:不增加成员函数#include “seqlist.h”#include using namespace std;void main()Seqlist list(100);cha
5、r a10;cina;for(int i=0;ai;i+) if(list.Insert(i,ai)=false) cout”插入异常n”;break;int p=0;char x,max,list.Find(0,max);for(i=1; imax) max=x;p=icout”表中元素最大值为:”max”位置为:”pendl;(5)#include “chain.h”#include “seqstack.h”void reverse(China &A, LinkedStack &B)B.ClearStack();char x;For(int i=0;idata=x;while(p-next
6、!=NULL) p=p-next; q-next= p-next; /或q-next=NULL;p-next=q;length+;(7)在SeqList类中void SeqList:Insertasc(const char &x) if(length=Maxsize) return; for(int k=length-1; k=0 & elementkx; k-) elementk+1=elementk; elementk+1=x; length+;在Chain类中void Chain:Insertasc(const char &x) Node *p=head; while(p-next !=
7、 NULL & p-next-data next; Node *q; q=new Node; q-data=x; q-next=p-next; p-next=q; length+; (9)void main() char str=C+ FORTRAN 3PASCAL 4basic; Queue Q1(50),Q2(50); int i; for(i=0;stri!=0;i+) if(stri=A & stri=a & stri=z) Q2.EnQueue(stri); char ch; while(!Q1.IsEmpty() Q1.Front(ch); coutch; Q1.DeQueue()
8、; coutendl; while(!Q2.IsEmpty() Q2.Front(ch); coutch; Q2.DeQueue(); cout60,进入P0右子树;99与P2结点的值75比较,因9975,进入P2右子树;99与P6结点的值99比较,相等,查找成功。(5) 各关键字的散列地址为: h(19)=6, h(14)=1, h(23)=10, h(01)=1, h(68)=3, h(20)=7, h(84)=6 h(27)=1, h(55)=3, h(11)=11, h(10)=10, h(79)=1 线性探查开放地址法:0123456789101112140168275519208479231110链地址法:0123456789101112(6)n(n+1)/2(10)初始堆:选择4后再建堆:选择5后再建堆:选择9后再建堆:选择11后再建堆:选择18后再建堆选择19后再建堆选择21后再建堆:选择29后再建堆:(11)最坏情况发生在:文件中的记录在初始时已按排序码值的升序或降序排列。3程序填空题b1b1 b1
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1