JAVA題目3寫出該程式的輸出結果。為什麼結果為5671112我懂的地方寫了註釋

2021-06-25 14:52:45 字數 770 閱讀 7294

1樓:匿名使用者

看來你是對這個for(t = b[i], j = i-1; j >= 0 && t < b[j]; j--)不太明白吧。

這個t是b[j+l]和b[j]進行交換的中間量,就是先將b[j]賦值給t,然後將b[j+1]賦值給b[j],在將t賦值給b[j+1]就ok了。

並且這個t = b[i]可以放到迴圈裡面來看的就清楚多了。

&& t < b[j] 也可以放到迴圈裡面寫的,加一個if 就行了,這個**寫的可讀性真的很差的,不建議這麼寫,不要裝什麼大師,將**寫的這麼緊湊,實際上不好,等你回頭來找bug的時候一頭霧水的。

改版如下:

for(i = 1;i< k; i++) }}

給你弄了一個排序的:

public static void main(string args) throws exception ;

int af = sort_array(a);

for (int i = 0; i < af.length; i++)

}public static int sort_array(int a)}}

return a;}

2樓:

這是對陣列的前k項排序 、

是冒泡嗎?(沒啥印象了)

3樓:匿名使用者

5671112 不就是對6, 12, 7, 11, 5的排序嗎

這行:有問題,

所以,是這個程式有問題,本來應該是冒泡的排序法的

分析下面java程式寫出該程式執行的結果

確實主方法需要有static修飾的,沒有static的main方法並不是真的主方法沒法執行。如果是印刷錯誤,本意是public static void main的話,結果就是 what a pleasure i amtom how do you do?沒有主方法,你告訴我怎麼執行 what a pl...

c語言讀下列程式,寫出程式的輸出結果

1,1因函式 void swap int a,int b 的第乙個引數a 不是指標,所以 它不會把 函式體內 對 a 的改變 帶回 函式呼叫語句 所在地。而第二個引數b 是指標,所以它能把 交換 結果 帶回來。int a 1,b 2 a,b初值int p b p 指向 bif a printf d,...

C語言程式,為什麼輸出的結果為3,2,0,而不是

當x為真時,因為是 號,後面的就不進行判斷了,就不進行計算了。a x y z 就是a x或 y和z 計算從左到右,或左邊為真時,結束運算,即x 2 1,y z不計算,直接輸出。結果為3,2,0 因為是 運算,計算了 x,已經為真,後面的內容不計算了,此時x 3,y z不變 請教這段c語言程式輸出結果...