要求:
1)至少采用三种方法实现上述问题求解(提示,可采用的方法有插入排序、希尔排序、起泡排序、快速排序、选择排序、堆排序、归并排序)。并把排序后的结果保存在不同的文件中。
2)统计每一种排序方法的性能(以上机运行程序所花费的时间为准进行对比),找出其中两种较快的方法。
3)如果采用4种或4种以上的方法者,可适当加分。
源程序如下:
#include
//标准输入输出头文件
#include
//定义杂项函数及内存分配函数
#include
//字符串处理
#include //定义关于时间的函数
#define N 20000
clock_t
Start,Now;//时钟
void Wrong()//错误输出
{
printf("\n*****按键错误!请重新输入*****\n");
getchar();//从标准输入获取字符并返回下一个字符
}
void change(int a[])//十个一行输出
{
int i;
system("cls");//清除之前的操作
for(i=0;i
{
if((i-1)==9)
printf("\n");
printf("%-7d",a[i]);
}
}
//二分插入排序
void Sort_efcr (int a[],int p)
{