- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
程序设计基础77983.doc
《程序设计基础》大作业
姓 名: 刘欢 学 号: 201001051118 班 级: 信管10-1班 成 绩:
信息科学与工程学院
2011年月日
设计C一套排序过程的演示函数
1.1 需求陈述
用户可以自己根据需要编写排序函数,但是自己编写的函数只是能够根据输入的数来排序这些数,而不能在具体的演示到底是怎么样排出来的。最后也是用户只能在屏幕上看到排好序的一列数而已!
所以我们需要具体的演示排序的过程是怎么样的,因此就有了下面的排序演示函数,这些函数根据排序的原理,比如冒泡排序,一步一步的演示各个数只见的比较。可以使用后看的更清楚!
为了方便函数的测试,我们还专们设计了一个测试系统,对每一个设计好的函数进行测试,使得函数测试更加具有针对性和说服力。
1.2 需求分析
1.2.1 功能分析
表1 函数功能分析
项目 功能 函数 排序的过程演示 排序演示函
数的
基本功能 冒泡排序 BubbleSort 选择排序 SelectSort 插入排序 InsertSort 排序演示所需函数的封装 随机得到数组 Timelygetarry 随机和用户输入得到数组 GetArry 交换两数 Swap 按数大小输出其个数用“*”表示 PrintfD 按数大小输出其个数用“=”表示 PrintfA 输出个别特殊元素的大小其他不变 AAprintf 输出最初数组的元素的大小 Beforeprint 输出排序后的数组元素的大小 Afterprint
1.2.2 数据分析
该排序过程的演示大多使用for语句和if语句。对于数组的定义是必须要知道数组的大小(对于静态数组而言),把数组的大小通过用户从键盘输入,并把这个操作放在main函数之中,其他的排序演示函数只要把数组名和数组大小作为其参数就很容易解决在封装函数中定义数组的麻烦。这样可以是程序可读性更高,更方便使用!,
对于不同的排序演示函数从主屏幕上用户可以自己选择使用,这方便了演示.同时用户还可以通过自己从键盘上输入数来进行排序演示.
1.2.3 技术约束
本函数库的测试系统已在code blocks下编译通过。
1.3 总体设计
1.3.1 全局数据结构
这个排序演示函数是通过for语句的嵌套使用的到的,在main函数中是用while语句来得到个主循环体,在这个主循环体中先选择要排序的方法,然后是输入要排序的个数,之后就是调用到已经封装的函数,如BubbleSort即冒泡排序,SelectSort即选择排序,和InsertSort即插入排序,就进入了排序演示的过程!
1.3.2 排序演示函数设计
A. 排序的基本函数
冒泡排序
函数原型:int BubbleSort (int a[],int size )
功能: 冒泡排序是一种比较常见的排序方法,主要功能是通过传入一列数然后经过冒泡排序的到一个有序的数,而本程序所要表达的是把数的大小通过图形的的个数来表示,然后比较相邻的两个数的大小,把较小的交换上来。依次下去直到最后一个数比较完为止。最后是输出排序好的数(用输出图形的个数的多少表示其大小)。
实现思路: 通过在冒泡排序的最初的循环体中表达首先调用Beforeprint函数输出 未排序的数,然后清屏根据条件输出不同的数用不同的图形表示。最后是调用Afterprin函数输出排列过之后的数。
2. 选择排序
函数原型:int SelectSort (int a[],int size )
功能: 选择排序是也一种比较常见的排序方法,主要功能是通过传入一列数然后经过选择排序的到一个有序的数,而本程序所要表达的是把数的大小通过图形的的个数来表示,然后按顺序一个数和其余的数比较,把较小的数交换上来。依次下去知道最后一个数。最后是输出排序好的数(用输出图形的个数的多少表示其大小)。
实现思路:通过在选择排序的最初的循环体中表达首先调用Beforeprint函数输出未排序的数,然后清屏根据条件输出不同的数用不同的图形表示。最后是调用Afterprin函数输出排列过之后的数。
3.插入排序
函数原型:int InsertSort (int a[],int size )
功能: 插入排序是另一种比较常见的排序方法,主要功能是通过传入一列数然后经过选择排序的到一个有序的数,而本程序所要表达的是把数的大小通过图形的的个数来表示,与选择,冒泡不同,插入是通过先选好一个数,待插入的的数和已排好序的数一次比较,找到一个合适的位置,然后把这个数插入进去。依次下去直到最后一个数也被插入到序列当中。最后是输出排序好的数(用输出图形的个数的多少表示其大小)。
您可能关注的文档
最近下载
- 企业内部控制采购业务.doc VIP
- 2022年深圳市大鹏新区招聘社区专职工作者考试真题.docx VIP
- 数字化转型背景下职业教育信息化建设路径.pptx VIP
- 第8课 用制度体系保证人民当家作主【2023年秋最新版】.pptx VIP
- 比泽尔-半封闭整体型螺杆压缩机-中文操作手册CSH65-CSH75-CSH85-CSH95.pdf VIP
- 《无衣》(教学课件)-2024-2025学年高二语文选择性必修上册同步备课系列(统编版2019).pptx
- 基于特征性肽段检测人血浆中特瑞普利单抗药物浓度的液相色谱串联质谱方法.pdf VIP
- 矿业权评估师经济与法律笔记2023.docx VIP
- 肺部感染合并心衰护理查房.pptx VIP
- 财富管理02基础-家庭财务报表.ppt VIP
文档评论(0)