C语言,简单选择排序
选择排序的基本思想描述为:对一个未排序的数组,使用双重for循环,第一个for循环控制趟数,第二个for循环控制数组内元素之间的比较。即,第一趟就是第一个元素和其后面的元素比较,如果大于就进行交换,后面的几趟亦是这样。一共有n-1趟。最终输出数组。
Dev-C++
完整程序:
#include "stdio.h"
int main()
{
int n,i;
printf("请输入要排序的数字个数\n");
scanf("%d",&n);
int a[n];
printf("请输入%d个数\n",n);
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
for (i=1;i<n;i++)
{
int s=i-1;
int j,temp;
for(j=1;j<n-i+1;j++)
{
if(a[s]>a[s+j])
{
temp=a[s];
a[s]=a[s+j];
a[s+j]=temp;
}
}
}
for(i=0;i<n;i++)
{
printf("%5d",a[i]);
}
}
结果: