资源描述:
《实习报告格式及实习一》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实习报告格式实习一线性表及其应用题目:约瑟夫环问题实习时间:2001.10.12一、需求分析1.要求以循环链表模拟约瑟夫环,结点个数(人数)n≤30。各人的密码和初始报数上限值必须为正整数。2.程序以人机对话的方式执行,即在计算机终端上显示“提示信息”后,由用户在键盘上输入相应的运算命令或数据;相应的输入数据和运算结果显示在其后。3.测试数据:n=7,m=20,7个结点的密码分别为:3,1,7,2,4,8,4,输出结果应为:6,1,4,7,2,3,5。用m=1再测试一次,输出结果应为:1,4,6,5,7,3,2。二、设计1.设计思想(1)存储结构(2)主要算法基本思想(略,见上课笔记)2.
2、设计表示(1)函数调用关系图main→createlist→locfor(2)函数接口规格说明intcreatelist(clinktp**ra,intn);/*建立以ra为尾指针的有n个结点的循环链表*/voidlocfor(clinktp*ra,intm);/*在循环链表中根据要求输出各次从链表中删除的结点序号*/3.实现注释(即各项功能的实现程度)(1)根据输入的n值建立循环链表;(2)可任意输入初始报数上限值m(正整数)。4.详细设计(即主要算法的细化。略,见上课笔记)三、调试分析调试过程中遇到的主要问题是如何解决的;对设计和编码的回顾讨论和分析;时间和空间复杂度的分析;改进设想;
3、经验和体会等。四、用户手册(即使用说明)五、运行结果如果题目规定了测试数据,则结果要包含这些测试数据和运行输出,当然还可以含其他测试数据及其运行输出(有时需要多组数据)。六、源程序清单实习一线性表、栈和队列及其应用1.一元稀疏多项式的加法运算【问题描述】设计一个实现一元稀疏多项式相加运算的演示程序。【基本要求】(1)输入并建立两个多项式;(2)多项式a与b相加,建立和多项式c;(3)输出多项式a,b,c。输出格式:比如多项式a为:A(x)=c1xe1+c2xe2+…+cmxem,其中,ci和ei分别为第i项的系数和指数,且各项按指数的升幂排列,即0≤e1<e2<…<em。多项式b,c类似输
4、出。【测试数据】(1)(1+x+x2+x3+x4+x5)+(-x3-x4)=(1+x+x2+x5)(2)(x+x100)+(x100+x200)=(x+2x100+x200)(3)(2x+5x8-3x11)+(7-5x8+11x9)=(7+2x+11x9-3x11)【实现提示】(1)用带头结点的单链表存储多项式。(2)三个多项式链表中都只存储非零系数项。若多项式a与b中指数相等的两项相加后,系数为零,则在和多项式c中不存储该指数项。2.长整数运算【问题描述】设计一个程序实现两个任意长的整数求和运算。【基本要求】利用双向循环链表实现长整数的存储,每个结点含一个整型变量。任何整型变量的范围是:
5、-(215-1)~(215-1)。输入和输出形式:按中国对于长整数的表示习惯,每四位一组,组间用逗号隔开。【测试数据】(1)0;0;应输出“0”。(2)–2345,6789;-7654,3211;应输出“-1,0000,0000”。(3)–9999,9999;1,0000,0000,0000;应输出“9999,0000,0001”。(4)1,0001,0001;-1,0001,0001;应输出“0”。(5)1,0001,0001;-1,0001,0000;应输出“1”。【实现提示】(1)每个结点中可以存放的最大整数为215-1=32767,才能保证两数相加不会溢出。但若这样存,即相当于按3
6、2768进制数存,在十进制数与32768进制数之间的转换十分不方便。故可以在每个结点中仅存十进制数的4位,即不超过9999的非负整数,整个链表视为万进制数。(2)可以利用头结点数据域的符号代表长整数的符号。用其绝对值表示元素结点数目。相加过程中不要破坏两个操作数链表。两操作数的头指针存于指针数组中是简化程序结构的一种方法。不能给长整数位数规定上限。【选作内容】修改上述程序,使它在整型量范围是:-(2n-1)~(2n-1)的计算机上都能有效地运行。其中,n是由程序读入的参量。输入数据的分组方法可以另行规定。3.停车场管理【问题描述】设停车场是一个可停放n辆汽车的狭长通道,且只有一个大门可供汽
7、车进出。汽车在停车场内按车辆到达时间的先后顺序,依次由北向南排列(大门在最南端),若停车场内已停满n辆汽车,则后来的汽车只能在门外的便道上等候,一旦有车开走,则排在便道上的第一辆车即可开入;当停车场内某辆车要离开时,在它之后进入的车辆必须先退出车场为它让路,待该辆车开出大门外,其他车辆再按原次序进入车场,每辆停放在车场的车在它离开停车场时必须按它停留的时间长短交纳费用。试为停车场编制按上述要求进行管理的模拟程序。【基本要