我正在尝试学习冒泡排序算法。互联网上的大多数代码都使用布尔变量,但我想在不使用布尔变量的情况下执行此操作。
# include <iostream>
using namespace std;
int main ()
{
int n;
int k;
int temp;
int arr[6] = {9,7,8,6,4,2};
for(n=0;n<6;n++){
for(k=0;k<n-1;k++){
if(arr[k]>arr[k+1]){
temp = arr[k+1];
arr[k+1]=arr[n];
arr[k] = temp;
}
}
}
for(n=0;n<6;n++){
cout<< arr[n] << endl;
}
}
将代码更改为:
for(n=0;n<6;n++){
for(k=0;k<5;k++){
if(arr[k]>arr[k+1]){
temp = arr[k];
arr[k]=arr[k+1];
arr[k+1] = temp;
}
}
}
你的逻辑永远行不通,因为: