ImageVerifierCode 换一换
格式:DOCX , 页数:62 ,大小:819.60KB ,
资源ID:2135923      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/2135923.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据结构课程设计实验报告.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数据结构课程设计实验报告.docx

1、数据结构课程设计实验报告 数据结构与算法课程设计实验报告 组员姓名: 张 林 王 莉 邱 波 马俊兰 组员学号: 20100633 20100608 20100596 20100585 学 院:信息与计算科学学院 专业班级: 10级应数二,三班 指导老师: 虎旭林 设计日期: 20120618 一 前言 3二 本小组成员 3三 文章编辑 4 1)需求分析 4 2)概要设计 4 3)详细设计 6 4)调试分析 11 5)课程设计总结 13四 运动会分数统计 13 1)需求分析 13 2)概要设计 13 3)详细设计 15 4)调试分析 22 5)课程设计总结 24五 一元多项式的计算 25 1)

2、需求分析 25 2)概要设计 25 3)详细设计 26 4)调试分析 31 5)课程设计总结 31六 赫夫曼树的建立 32 1)需求分析 32 2)概要设计 32 3)详细设计 34 4)调试分析 38 5)课程设计总结 39七 课程设计总结 40八 设计参考资料 40一 前 言在计算机及其应用的各个领域中,都会用到各种各样的数据结构,学会分析研究计算机加工对象的特性,选择合适的数据结构和存储表示,以及编制相应的实现算法,是计算机工作者当前的计算机专业教学计划中,它是核心课程之一。数据结构与算法课程设计是实践性教学中的一个重要环节,它以数据结构与算法课程为基础,可以涉及和课程相关的各个方面,是

3、一门独立于课程之外的特殊课程。课程设计是让同学们对所学的课程更全面的学习和应用,理解和掌握课程的相关知识。数据结构与算法是一门重要的专业基础课,是计算机理论和应用的核心基础课程。 数据结构课程设计,要求学生在数据结构的逻辑特性和物理表示、数据结构的选择和应用、算法的设计及其实现等方面,加深对课程基本内容的理解。同时,在程序设计方法以及上机操作等基本技能和科学作风方面受到比较系统和严格的训练。而这次数据结构与算法课程设计中,根据老师的设计要求,我们小组理性化的选择了五个程序,即运动会的分数统计,文章编辑,一元多项式的计算,赫夫曼数的建立。我们小组由我,10级应数三班王莉同学,10级应数二班邱波同

4、学,马俊兰同学组成,在编制程序设计中,我们完美的实现了分工合作,由最初的各自负责一个程序的源程序的编写,即我负责文章编辑的程序编程,邱波同学完成运动会的分数统计程序编程,王莉同学完成一元多项式的计算程序,以及马俊兰同学完成赫夫曼数的建立的源程序的编程。最后又由我们四人共同完成所有源程序的改进、改错与运行。我们这样的先分工后合作的方式,更加全面的让各自的编程能力做到了独立与共同的目的,几乎让各自都体会到了编程的个性化,以及锻炼了自己的编程能力。而在后期主要由,邱波同学,王莉同学,马俊兰同学负责程序的改进,改错以及完善,由我负责实验设计报告的完成。通过这次的数据结构与算法课程设计实验,让我们更加的

5、学到了不少的东西,我们通过在图书馆的相关资料查找,网上有关资料的搜索,以及重先看了又看数据结构与算法的教材知识,在我们共同的努力下终于完成了这次程序设计。此次课程设计使我们对数据结构方面的知识有了更加深入的了解,也使我们认识到自己在学习编程方面还有很多的不足。今后我们要多读一些编程方面的书籍,不能只拘泥于课本上的知识,并注重理论与实践的结合,多上机练习编写程序,提高自己的实际动手能力和独立思考的能力,不断充实自己,更好的掌握编程思想。最后,非常感谢虎旭林老师在课堂上以及上机实验中对我们有关知识的细心讲解,程序编程的耐心指导下,让我们在大学没有白费光阴,学到有用的知识。也感谢帮助我们的同学及朋友

6、,他们让我们在这门课程学习与设计中改进了不少的不足点。这份程序设计中或许还有许多地方的不足与错误,还望在老师您的发现与提醒下,让我们得到更多的改进与学习,编程能力的完美与提高。谢谢! 张 林 2012年6月二 本组成员张 林 20100633 王 莉 20100608邱 波 20100596 马俊兰 20100585三 文章编辑(一)、需求分析 功能:输入一页文字,程序可以统计出文字、数字、空格的个数。 静态存储一页文章,每行最多不超过80个字符,共N行; 要求(1)分别统计出其中英文字母数和空格数及整篇文章总字数; (2)统计某一字符串在文章中出现的次数,并输出该次数; (3)删除某一子串,

7、并将后面的字符前移。 存储结构使用线性表,分别用几个子函数实现相应的功能; 输入数据的形式和范围:可以输入大写、小写的英文字母、任何数字及标点符号。 输出形式:(1)分行输出用户输入的各行字符; (2)分4行输出全部字母数、数字个数、空格个数、文章总字数 (3)输出删除某一字符串后的文章;(二)、概要设计1、定义结构体: struct line,文本行采用顺序存储,行与行之间采用链式存储。开始主函数输入文章统计空格个数统计英文字母数统计文章总字数删除指定字符串统计指定字符串个数统计文章数字个数输出文章结束2、主要函数:int FindString(LINE * &head,char *str)

8、 /*统计str在文章中出现的次数*/求在一行中Str出现的次数的流程图:查找第一个字符,如果有第一个字符即p-datai=str0,设计数器k=0查找这个字符后面的字符与要查找的字符串是否匹配即p-datai+j=strj,如果匹配k+重复第二步,如果k=len2,则查找到,count+;如果没查找到,重新进行第一步void delstringword(char *s,char *str) /*删除字符串*s中的字符串*str*/(三)、详细设计:源程序 #include #include typedef struct line char *data; struct line *next;L

9、INE; void OutPut(LINE * &head) LINE *p=head; printf(输入的文章为:n); do printf(%sn,p-data); while(p=p-next)!=NULL); printf(n);void menu() printf(*文章编辑*n); printf(*n); printf(1.统计文章中全部英文字母数 n); printf(2.统计文章中空格个数 n); printf(3.统计文章总字数 n); printf(4.统计文章中数字个数 n); printf(5.统计指定字符串在文中出现的次数 n); printf(6.删除指定字符串

10、n); printf(*n);void Create(LINE * &head) printf (请输入一页文章,以Ctrl+E(E)为结尾(每行最多输入80个字符):n); LINE *p=new LINE; /首先为链表建立一个附加表头结点 head=p; /将付给表头指针 char tmp100; while(1) gets(tmp); if(strlen(tmp)80) printf(每行最多输入80个字符!); break; if(tmp0=5)break; /如果发现输入E,则退出输入 p=p-next=new LINE; p-data=new charstrlen(tmp)+1;

11、 strcpy(p-data,tmp); if(tmpstrlen(tmp)-1=5) /除去最后一个控制符E p-datastrlen(tmp)-1=0; break; p-next=NULL; head=head-next; OutPut(head); printf(n); menu();void CountLetter(LINE * &head) LINE *p=head; int count=0; do int Len=strlen(p-data); /计算当前data里的数据元素个数 for(int i=0;idatai=a&p-dataidatai=A&p-datainext)!=NULL); printf(全部英文字母数%d n, count); printf(n); menu();/统计文章中数字的个数 void CountNumber(LINE * &head) LINE *p=head; int count=0; do int Len=strlen(p-data); for(int i=0;idatai=48 & p-datainext)!=NULL); printf(文章中数字个数: %d n,count);

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1