您的位置:首页 > 其它

简单选择排序的算法实现

2009-12-29 11:40 375 查看
#include<stdio.h>
#define n 10

int Selectminkey(int *r,int i)
{
int j=i,min=r[i];
for(i;i<=n;i++)
{
if(min>r[i])
{
min=r[i];
j=i;
}//if
}//for
return j;
}//Selectminkey

void Selectsort(int *r)   // 对记录序列r[1..n]作简单选择排序。
{
int i,j,k;
for(i=1;i<n;i++)      // 选择第 i 小的记录,并交换到位
{
j=Selectminkey(r,i);    // 调用Selectminkey函数,在 r[i..n] 中选择关键字最小的记录,返回给j
if(j!=i)                // 与第 i 个记录交换
{
k=r[i];
r[i]=r[j];
r[j]=k;
}//if
}//for
}//Selectsort

void main()
{
int r[11];
printf("请输入十个数:/n");
for(int m=1;m<=n;m++)
scanf("%d",&r[m]);
Selectsort(r);
printf("排序后:/n");
for(m=1;m<11;m++)
printf("%d ",r[m]);
printf("/n");
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: