qfedu-basic-level/day8/d13.cpp

32 lines
747 B
C++
Raw Permalink Normal View History

2023-06-23 17:31:07 +08:00
// 数组排序
#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
int arr[] = {5, 2, 3, 1, 7, 6};
int len = sizeof(arr) / sizeof(int); // 这里的 sizeof(int) 相当于 sizeof(arr[0])
// 冒泡排序
for (int i = 0; i < len - 1; i++)
{
// i 代表轮数
for (int j = 0; j < len - i - 1; j++)
{
if (arr[j] > arr[j + 1])
{
// 使用异或运算交换两个数的值
arr[j] = arr[j] ^ arr[j + 1];
arr[j + 1] = arr[j] ^ arr[j + 1];
arr[j] = arr[j] ^ arr[j + 1];
}
}
}
for (int i = 0; i < len; i++)
cout << arr[i] << "\t";
cout << endl;
return 0;
}