課程
/后端開發
/C
/C語言入門
為什么i=8
2017-03-11
源自:C語言入門 6-5
正在回答
for(i=8; i>=0; i--)
? ? {
? ? ? ? for(j=0;j<=i;j++)
? ? ? ? {
? ? ? ? ? ? if( ? ? ?arr[j]>arr[j+1] ? ? ?) ? ? ?//當前面的數比后面的數大時
? ? ? ? ? ? {
? ? ? ? ? ? ? ? double temp; ? ?//定義臨時變量temp
? ? ? ? ? ? ? ? temp = arr[j]; ? ? //將前面的數賦值給temp
? ? ? ? ? ? ? ? arr[j]=arr[j+1]; ? ? ? ? ? ? ?//前后之數顛倒位置
? ? ? ? ? ? ? ? arr[j+1]=temp; ? ? ? ? ? ? ?//將較大的數放在后面 ? ?
? ? ? ? ? ? } ? ? ? ? ? ? ? ??
? ? ? ? } ? ? ? ? ? ? ? ?
? ? }
注意這一句話,arr[j]>arr[j+1]。
外部循環設置i最大為8,在第一輪內部循環,當j加到i(也就是8)的時候(注意判斷條件是j<=i),實際上比較的是arr[8]和arr[9]的大小關系。數組最后一個數就是arr[9](數組下標從0開始),所以完成了所有數的比較。
看這種嵌套循環也對著內部兩個部分的初始設置和判斷條件來看。
希望你能看懂我的意思,祝好!
qq__6768 提問者
同學您好,是一樣的!謝謝您的支持,歡迎您的持續關注!
非常感謝
舉報
C語言入門視頻教程,帶你進入編程世界的必修課-C語言
3 回答為什么i=8
2 回答題中i=8的意義是啥
4 回答為什么是i=8而不是i=9
1 回答14行for(i=8; i>=0; i--)
3 回答 結果為啥是18 22 8 8
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2017-03-11
for(i=8; i>=0; i--)
? ? {
? ? ? ? for(j=0;j<=i;j++)
? ? ? ? {
? ? ? ? ? ? if( ? ? ?arr[j]>arr[j+1] ? ? ?) ? ? ?//當前面的數比后面的數大時
? ? ? ? ? ? {
? ? ? ? ? ? ? ? double temp; ? ?//定義臨時變量temp
? ? ? ? ? ? ? ? temp = arr[j]; ? ? //將前面的數賦值給temp
? ? ? ? ? ? ? ? arr[j]=arr[j+1]; ? ? ? ? ? ? ?//前后之數顛倒位置
? ? ? ? ? ? ? ? arr[j+1]=temp; ? ? ? ? ? ? ?//將較大的數放在后面 ? ?
? ? ? ? ? ? } ? ? ? ? ? ? ? ??
? ? ? ? } ? ? ? ? ? ? ? ?
? ? }
注意這一句話,arr[j]>arr[j+1]。
外部循環設置i最大為8,在第一輪內部循環,當j加到i(也就是8)的時候(注意判斷條件是j<=i),實際上比較的是arr[8]和arr[9]的大小關系。數組最后一個數就是arr[9](數組下標從0開始),所以完成了所有數的比較。
看這種嵌套循環也對著內部兩個部分的初始設置和判斷條件來看。
希望你能看懂我的意思,祝好!
2022-03-26
同學您好,是一樣的!謝謝您的支持,歡迎您的持續關注!
2017-10-03
非常感謝