若是這樣我就又產生問題了,
意思說是指for迴圈也可以變成這樣 for( ; 0; n-- )嗎??
可是在這個程式裡
#include <iostream.h>
int main()
{
int b,e,r;
cout << "Enter base: ";
cin >> b;
cout << "Enter exponent: ";
cin >> e;
r=1;
for( ; e; e-- ) r=r*b;
cout << "Result: " << r << endl;
return 0;
}
如果我把迴圈裡第二個條件的e直接改成0的話,也就是for( ; 0; e-- )
為什麼程式就不能正確執行了呢??
有點打破沙鍋問到底的感覺...........抱歉!!
希望前輩也能回答這個問題!謝謝
--
[1;32m※ Origin: [33m碧海藍天 [37m<bbs.ntit.edu.tw> [m
[1;31m◆ From: [36m203.79.189.67 [m
for迴圈的第二個參數(執行條件判斷)一般是放booling運算式..
而c中0表false 1表true~~~
所以當你直接放零~~代表整個迴圈一定不能執行^^
如果改成 for( ; e>=0; e--) 就okㄌ~~~:p
用最簡單的方式寫程式~~~
何必寫一堆要讓自己腦筋轉好幾圈才會了解的東東!?
--
[m [1;33;46m〒作者:MCasper 來自:LB2-163.D13-219.ncu.edu.tw [m
[1;36m◎中央資工二進位的世界 [37m【140.115.50.50‧binary.csie.ncu.edu.tw】
如果照你改的那r=r*b不會執行因為一開始測試條件就為FALSE了(0)
--
[1;36m※Post by [37mhorserider [36mfrom [33mas19po101.ht.ficnet.net. [m
[1;34m▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂ [m
[1;36m東吳溪城bbs站 [31m˙ [33m電子佈告欄系統 [31m˙ [32mbbs.scu.edu.tw [31m˙ [37m163.14.2.15 [m
[1;34m▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ [m