欢迎来到天天文库
浏览记录
ID:14004682
大小:53.50 KB
页数:15页
时间:2018-07-25
《c语言各种排序举例》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、程序实现:1.冒泡排序的程序实现://************************//*PROGRAM:起泡排序*//*CONTENT:起泡排序*//************************#include#include#include#include#include#defineMAXSIZE20//排序表的最大容量enumBOOL{False,True};typedefstruct//定义排序表的结构{inte
2、lemword[MAXSIZE];//数据元素关键字intcount;//表中当前元素的个数}SqList;voidInitialSqList(SqList&);//初始化排序表voidBubbleSort(SqList&);//起泡排序voidPrintSqList(SqList);//显示表中的所有元素voidmain(){SqListL;//声明表Lcharj='y';//-------------------------程序说明-------------------------------printf("
3、本程序将演示起泡排序的操作。");//----------------------------------------------------------------while(j!='n'&&j!='N'){InitialSqList(L);//待排序列初始化BubbleSort(L);//起泡排序PrintSqList(L);//显示排序结果printf("继续进行下一次排序吗?(Y/N)");scanf("%c",&j);}printf("程序运行结束!按任意键关闭窗口!");getchar()
4、;getchar();}voidInitialSqList(SqList&L){//表初始化inti;printf("请输入待排序的记录的个数:");scanf("%d",&L.count);printf("请输入待排序的记录的关键字(整型数):");for(i=0;i5、True;i>0&&change;--i){change=False;for(j=0;jL.elemword[j+1]){t=L.elemword[j];L.elemword[j]=L.elemword[j+1];L.elemword[j+1]=t;change=True;}}}voidPrintSqList(SqListL){//显示表中所有元素inti;printf("已排好序的序列如下:");for(i=0;i6、d",L.elemword[i]);printf("");}*******************************************************************************2.选择排序的程序实现://************************//*PROGRAM:简单选择排序*//*CONTENT:简单选择排序*//************************#include#include#include7、#include#include#defineMAXSIZE20//排序表的最大容量typedefstruct//定义排序表的结构{intelemword[MAXSIZE];//数据元素关键字intcount;//表中当前元素的个数}SqList;voidInitialSqList(SqList&);//初始化排序表voidSelectSort(SqList&);//简单选择排序intSelectMinKey(SqList,int);//寻找最小关键字的记录voidPrint8、SqList(SqList);//显示表中的所有元素voidmain(){SqListL;//声明表Lcharj='y';//-------------------------程序说明-------------------------------printf("本程序将演示简单选择排序的操作。");//---------------------------------
5、True;i>0&&change;--i){change=False;for(j=0;jL.elemword[j+1]){t=L.elemword[j];L.elemword[j]=L.elemword[j+1];L.elemword[j+1]=t;change=True;}}}voidPrintSqList(SqListL){//显示表中所有元素inti;printf("已排好序的序列如下:");for(i=0;i6、d",L.elemword[i]);printf("");}*******************************************************************************2.选择排序的程序实现://************************//*PROGRAM:简单选择排序*//*CONTENT:简单选择排序*//************************#include#include#include7、#include#include#defineMAXSIZE20//排序表的最大容量typedefstruct//定义排序表的结构{intelemword[MAXSIZE];//数据元素关键字intcount;//表中当前元素的个数}SqList;voidInitialSqList(SqList&);//初始化排序表voidSelectSort(SqList&);//简单选择排序intSelectMinKey(SqList,int);//寻找最小关键字的记录voidPrint8、SqList(SqList);//显示表中的所有元素voidmain(){SqListL;//声明表Lcharj='y';//-------------------------程序说明-------------------------------printf("本程序将演示简单选择排序的操作。");//---------------------------------
6、d",L.elemword[i]);printf("");}*******************************************************************************2.选择排序的程序实现://************************//*PROGRAM:简单选择排序*//*CONTENT:简单选择排序*//************************#include#include#include
7、#include#include#defineMAXSIZE20//排序表的最大容量typedefstruct//定义排序表的结构{intelemword[MAXSIZE];//数据元素关键字intcount;//表中当前元素的个数}SqList;voidInitialSqList(SqList&);//初始化排序表voidSelectSort(SqList&);//简单选择排序intSelectMinKey(SqList,int);//寻找最小关键字的记录voidPrint
8、SqList(SqList);//显示表中的所有元素voidmain(){SqListL;//声明表Lcharj='y';//-------------------------程序说明-------------------------------printf("本程序将演示简单选择排序的操作。");//---------------------------------
此文档下载收益归作者所有