设i值为0;
当i<N-1
{
设J值为i+1;
设min等于i;
当J<N
{
如果stuArray[min] > stuArray[J]
{
设min的值为j;
}
j自增1;
}
交换第i个元素和第min个元素;
i自增1;
}
设i值为0;
当i<N-1
{
设J值为i+1;
设min等于i;
当J<N
{
如果stuArray[min] > stuArray[J]
{
设min的值为j;
}
j自增1;
}
交换第i个元素和第min个元素;
i自增1;
}
这是一个插入排序的算法。。。stuArray是一个数组。。就是排序那个数组。。。
#include <stdio.h>
#define N 10
int main (void)
{
int i, j, min, temp;
int stuArray[N] = {1,5,2,6,3,7,4,8,9,0};
for(i=0; i<N-1; ++i)
{
for(j=i+1,min=i; j<N; ++j)
{
if(stuArray[min]>stuArray[j])
min = j;
}
temp = stuArray[i];
stuArray[i] = stuArray[min];
stuArray[min] = temp;
}
printf("排序后得到的是:\n");
for(i=0; i<N; ++i)
printf("%d ", stuArray[i]);
}
运行后