{ case '1': Insertsort(); printf(\算法名称=============比较次数===============移动次数============时间=\\n\ printf(\直接插入排序 %9ld %9ld %7lf \\n\ break; case '2': Shellsort(); printf(\算法名称=============比较次数===============移动次数============时间=\\n\ printf(\希尔排序 %9ld %9ld %7lf \\n\ break; case '3': Bubblesort(); printf(\算法名称=============比较次数===============移动次数============时间=\\n\ printf(\冒泡排序 %9ld %9ld %7lf \\n\ break; case '4': QuickSort(1,l); compare[4]=times; change[4]=changes; times=0; changes=0; printf(\算法名称=============比较次数===============移动次数============时间=\\n\ printf(\快速排序 %9ld %9ld %7lf \\n\ break; case '5': Selectsort(); printf(\算法名称=============比较次数===============移动次数============时间=\\n\ printf(\简单选择排序 %9ld %9ld %7lf \\n\
break; case '6': AllsortCompare(); break; case '7': Changesort(); break; case '8': Changesortlong(); break; case '0': ch1='n'; break; default:printf(\输入错误!请重新输入!\\n\\t\\t\ } if(ch2!='0') { if(ch2=='2'||ch2=='3'||ch2=='4'||ch2=='5'||ch2=='6'||ch2=='1') printf(\排序演示输出完毕!\\n\ if(ch2=='7') printf(\更换数据完毕!\\n\ if(ch2=='8') printf(\更换表长完毕!\\n\
printf(\请按回车键返回主菜单...\ q=getchar(); if (q!='\\xA') { getchar(); ch1='n'; } } } }
void Insertsort()//直接插入排序 {
start = clock(); int i,j,m=0;
for(i=2;i<=l;i++) { if(R[i] { times++; changes++; R[j+1]=R[j]; j--; } R[j+1]=R[0]; changes++; } m++; times++; } compare[1]=times; change[1]=changes; times=0; changes=0; finish = clock(); duration = (double)(finish - start) / CLOCKS_PER_SEC; timess[1]=duration; for(i=1;i<=l;i++) R[i]=s[i]; } void Shellsort() //希尔排序 { start = clock(); int i,j,gap,x,m=0; gap=l/2; while (gap>0) { for(i=gap+1;i<=l;i++) { j=i-gap; while(j>0) { times++; if (R[j]>R[j+gap]) { x=R[j];R[j]=R[j+gap]; R[j+gap]=x; j=j-gap; changes++; } else j=0; } } gap=gap/2; m++; } compare[3]=times; change[3]=changes; times=0; changes=0; finish = clock(); duration = (double)(finish - start) / CLOCKS_PER_SEC; timess[3]=duration; for(i=1;i<=l;i++) R[i]=s[i]; } void Bubblesort()//冒泡排序 { start = clock(); int i,j; int exchange; for(i=1;i<=l;i++) { exchange=FALSE; for(j=l;j>=i+1;j--) { times++; if(R[j] compare[2]=times; change[2]=changes; times=0; changes=0; finish = clock(); duration = (double)(finish - start) / CLOCKS_PER_SEC; timess[2]=duration;

