[問題] 新手自學c++ 有關do-while迴圈的題目有一題解不出來

看板C_and_CPP (C/C++)作者 (阿傑)時間16年前 (2009/09/03 13:23), 編輯推噓0(005)
留言5則, 3人參與, 最新討論串1/1
//一個讀入兩個整數值後,將兩個值之間的所有整數,從小到大的排列並顯示 例 : 整數 a : 37 整數 b : 28 28 29 30 31 32 33 34 35 36 37 #include <iostream> using namespace std; int main() { int a, b; cout << "請輸入整數 a : "; cin >> a; cout << "請輸入整數 b : "; cin >> b; int min, max; if (b > a) { max = b; min = a; } else { max = a; min = b; } do { if (max > min) { max--; cout << max << "\n"; } } while (max < min); system("pause"); return 0; } 編譯&執行後 請輸入整數 a :99 請輸入整數 b :1 . . 在來就沒反應了 . . 請問各位大大 我哪裡有錯了? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 60.249.249.103

09/03 13:47, , 1F
你的寫法是從大到小吧
09/03 13:47, 1F

09/03 13:51, , 2F
while (max < min) => while(0) 就跳出了
09/03 13:51, 2F

09/03 13:54, , 3F
max == min 的時候會跳不出來XDD
09/03 13:54, 3F

09/03 14:33, , 4F
是會跳出迴圈沒錯,可是不會列出max到min中間的值耶…
09/03 14:33, 4F

09/03 14:36, , 5F
因為沒有執行,所以才不會列出呀
09/03 14:36, 5F
文章代碼(AID): #1AdrAtQi (C_and_CPP)
文章代碼(AID): #1AdrAtQi (C_and_CPP)