第一種
#include <iostream>
using namespace std;
int main() {
int a,b;
while(cin >> a >> b ){
a=a+b;
cout << a << "\n";
}
return 0;
}
------------------------
第二種
#include <iostream>
using namespace std;
int main() {
int a,b;
while(1){
cin >> a >> b;
a=a+b;
cout << a << "\n";
}
return 0;
}
--------------------------------
兩個都可以執行
第一種如果輸入超過10位數是直接終止程序
第二種如果輸入超過10位數會不斷跑數字迴圈
請問為什麼會這樣@@?
第一種
#include
using namespace std;
int main() {
int a,b;
while(cin >> a >> b ){
a=a+b;
cout << a << "\n";
}
return 0;
}
------------------------
第二種
#include
using namespace std;
int main() {
int a,b;
while(1){
cin >> a >> b;
a=a+b;
cout << a << "\n";
}
return 0;
}
--------------------------------
兩個都可以執行
第一種如果輸入超過10位數是直接終止程序
第二種如果輸入超過10位數會不斷跑數字迴圈
請問為什麼會這樣@@?
int 的最大值為2147483647
所以如果你輸入的值超過這個數字
那麼系統會判斷你輸入錯誤
因此
若把輸入放在while裡
那麼你輸入的不是他要的
因此他就會跳出來
但第二種是
你縱使輸入錯誤
他也沒法跳出
因此他就整個陷入迴圈
也不知道要輸出什麼(因為你輸入的是錯的)
所以他就隨便亂輸出
懂了嗎
若有幫助,可以光顧以下我的部落格嗎?
想衝衝人氣
http://ntnuee40475032h.pixnet.net/blog
謝謝