using namespace std;
int main()//降序
{
int tem_num = 0;
int arr[9] = { 4,2,8,0,5,7,1,3,9 };//是跟每一个进行比较,
for (int i = 0; i <= 7; i++)
{
for (int j = i; j <= 8; j++)
{
if (arr[i] < arr[j + 1])
{
tem_num = arr[i];
arr[i] = arr[j + 1];
arr[j + 1] = tem_num;
}
}
}
for (int k = 0; k < 9; k++)
{
cout << arr[k]<<endl;
}
system("pause");
return 0;
}
#include <iostream>
using namespace std;
int main() //从后面为起点开始轮换,升序
{
int tem_num = 0;
int arr[9] = { 4, 2, 8, 0, 5, 7, 1, 3, 9 };
for (int i = 0; i <= 7; i++)
{
for (int j = 0; j < 8 -i ; j++)
{
if (arr[j] > arr[j + 1]) {
tem_num = arr[j + 1];
arr[j + 1] = arr[j];
arr[j] = tem_num;
}
}
}
for (int k = 0; k < 9; k++) {
cout << arr[k] << endl;
}
system("pause");
return 0;
}
其实升序和降序,对于作者所写代码,区别在于,升序是从后面代码开始考虑,即从第7个位置和第八个位置相比,降序则是从开始即0位置开始。这里其实还有很多其他代码形式。
升序降序的代码逻辑在于:
升序:从后面开始,大的往前放
降序:从前面开始,大的往后放