#include <stdio.h>
#define n 8
typedef int datatype;
void ShellInsert(datatype R[],int dk)
{ int i,j;
for(i=dk+1;i<=n;i++)
if(R[i]<R[i-dk])
{ R[0]=R[i];
for(j=i-dk;(j>0)&&R[0]<R[j];j=j-dk)
R[j+dk]=R[j];
}
R[j+dk]=R[0];}
void ShellSort(datatype R[],int t)
{ int d[10];
for(int k=0;k<t;k++)
scanf("%d",&d[k]);
for(k=0;k<t;k++)
ShellInsert(R,d[k]); }
void main(datatype R[])
{ int i,j;
int k;
printf("排序前的整數:");
for(j=1;j<=n;j++)
scanf("%d",&R[j]);
printf("\n");
ShellSort(R,3);
printf("排序后的整數:");
for(k=1;k<=n;k++)
printf("%d",R[k]);
printf("\n");
}
uj5u.com熱心網友回復:
各種排序演算法影片演示http://www.webhek.com/misc/comparison-sort/轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/239210.html
標籤:C語言
上一篇:【人生苦短,我學 Python】基礎篇——基本語法(Day4)
下一篇:c++資料結構問題求大佬幫助
