循環代碼問題求解
使用循環計算1-2+3-4+5-6+…-100的值?
在編輯器中給出了三種循環體結構的部分代碼,請選擇合適的循環結構補全代碼實現此功能。
int sum = 0;? //定義計算結果變量sum
??? int i = 1;??? //定義循環數字變量i
??? int flag = 1; //定義符號狀態變量flag
???
??? //使用while循環
??? while(i<=100)
??? {
??????
??????? sum+=i*flag;
??????? i++;? //這里我覺得順序是這樣的,i++在第二行,可是答案是i++在第一行
??????? flag*=-1;
??? }
2017-04-20
i++在第一行
打印i
打印sum
i++在第二行
打印i
打印sum
由上知,i++的位置對循環一次后i的取值無影響(理論亦是),i++在第二行的運行結果按順序計算,邏輯上比較明了。i++在第一行也是可以的,只是。。。。估計是循環里只要程序存在,順序影響不大。。
個人比較傾向于先改變循環變量的值,先進行i++;
這個是按順序計算的。
2017-04-20