排序:比较大小->交换位置
升序条件下,通过N-1次比较,找出N个数中的最小数,然后与第一个数进行交换
#include<stdio.h>
#define N 10//这里可以更改数组大小
int main() {
int i,j,changemin,temp;
int a[N];
printf("请输入%d个将要排序的数\n", N);
for (i = 0; i < N; i++)
{
scanf_s("%d", &a[i]);
}
for(i=0;i<N-1;i++)
{
changemin = i;//对变量进行初始化
for(j=i+1;j<N;j++)//划重点
{
if(a[j]<a[changemin])
{
changemin = j;//当前最小值的下标改变
//——————交换————————
temp = a[i];
a[i] = a[changemin];
a[changemin] = temp;
}
}
}
for (i = 0; i < N; i++)
{
printf("%d\t", a[i]);
}
return 0;
}