我又来啦,在写代码前先普及个知识吧,看过来看过来,小可爱们!
通**过比较,选择出每一轮中最值元素,然后把他和这一轮中最最前面的元素交换**,所以这个算法关键是要记录每次比较的结果,即每次比较后最值位置(下标)。
#include <iostream>
using namespace std;
int main()
{
int a[10];
cout<<"请输入10个整数";
for(int i=0;i<10;i++)
{
cin>>a[i];
}//逐个输入10个整数;
for(int i=0;i<10;i++)
{
int min=a[i];//从第一个数开始每次定义为最小值;
for(int j=i+1;j<10;j++)
{
if(a[j]<min){//讲定义的数与比它下标数大的进行比较
min=a[j];
a[j]=a[i];
a[i]=min;
}
}
}
cout<<"按照升序排好的10个数为";
for(int i=0;i<10;i++)
{
cout<<a[i]<<" ";
}
return 0;
}