看不懂這個代碼...C++
#include <stdio.h>
int main()
{
? ? /* 小伙伴們:
? ? ? ? ? ?選擇你們認為最合理的循環結構完成功能吧 */
? ? int sum = 0; ?//定義計算結果變量sum
? ? int i = 1; ? ?//定義循環數字變量i
? ? int flag = 1; //定義符號狀態變量flag
? ??
? ? //使用while循環
? ? while(i<=100)
? ? {
? ? ? ? //sum=sum+flag*i;
? ? ? ? //flag=-flag;
? ? ? ? i++;
? ? ? ??
? ? }
? ? i = 1; ?//重新初始化變量i
? ??
? ? //do-while循環
? ? do{
? ? ? ? //sum=sum+flag*i;
? ? ? ?// flag=-flag;
? ? ? ? i++;
? ? ? ??
? ? }while(i<=100);
? ? i = 1; ?//重新初始化變量i
? ??
? ? //使用for循環
? ? for(i=1;i<=100;i++)
? ? {
? ? ? ? sum=sum+flag*i;
? ? ? ? flag=-flag;
? ? ? ? i++;
? ? } ?
? ? printf("sum=%d\n",sum);?
? ??
? ? return 0; ? ?
}
2015-02-05
使用循環計算1-2+3-4+5-6+…-100的值
sum記錄錢n個值的和,偶數前的符號為負,所以用了一個變量flag來實現正負號的變換,當i為單數時flag為正,當i為偶數時,flag*-1變為負數,再乘-1又為正數,當循環執行時,判斷循環條件,然后執行求和sun,之后實現flag的變號,和i的自增。直到循環條件不滿足
2016-09-16
flag*-1變為負數,再乘-1又為正數, 還是不懂,大神詳細說下謝謝