第一种快速实现整数排序的方法是使用sort()函数
#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
int a[10] = { 9,6,3,8,5,2,7,4,1,0 };//定义并初始化数组a
for (int i = 0; i < 10; i++)
cout << a[i]; //对原来的数组进行输出
sort(a, a + 10); //sort函数进行排序
cout << endl;
for (int i = 0; i < 10; i++) //对排序后的数组进行输出
cout << a[i];
return 0;
}
语法
Sort(start,end,cmp)
参数
(1)start表示要排序数组的起始地址;
(2)end表示数组结束地址的下一位;
(3)cmp用于规定排序的方法,可不填,默认升序。
需要注意这里要添加头文件#include<algorithm>。
第二种便是选择法,经典但是费时费力,代码篇幅要长的多,如下:
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
int a[11];
for (int i = 1; i <= 10; i++) { //输入10个数
cout << "a[" << i << "] = ";
cin >> a[i];
}
cout << "原来的顺序是:";
for (int i = 1; i <= 10; i++) { //输出10个数
cout << setw(8) << a[i];
}
cout << endl;
for (int i = 1; i <= 9; i++) {
int min = i;
for (int j = i+1; j <= 10; j++) {
if (a[i] > a[j]) { //排序部分
min = j;
int temp=0;
temp = a[i];
a[i] = a[min];
a[min] = temp;
}
}
}
cout << "之后的顺序是:";
for (int i = 1; i <= 10; i++) {
cout << setw(8) << a[i]; //输出部分
}
cout << endl;
system("pause");
return 0;
}