我想讓我的程序從最小到最大排序這個數組數組,但輸出結果會以其他方式出現。換句話說,我試圖不使用[4],因爲這是算法的作用,但我無法弄清楚。謝謝閱讀。冒泡排序微小的錯誤
輸出: 9月12日3月14日
#include <iostream>
using namespace std;
int main() {
int a[4] = {12, 9, 14, 3};
int temp;
for(int i = 0; i < 4; i++) {
if(a[i] > a[i + 1]) {
temp = a[i];
a[i] = a[i + 1];
a[i + 1] = temp;
}
cout << a[i] << " ";
}
return 0;
}
[3 + 1]超出範圍....在[2 + 1]處停止 – T33C
在你的for循環中進行微調,以解決T33C所說的問題,比如'for(int i = 0; i <3; i ++)',之後你得到的輸出是正確的對於給定的代碼。 –
@bkVnet不! http://coliru.stacked-crooked.com/a/5bcd33c4f3d5fa4c –