我這樣的也算對的???
花了沒看答案,尋思自己想花了挺久想出來的,發現跟答案只有一點點不一樣,但是感覺輸出結果應該完全不一樣,求大神看看
#include <stdio.h>
int main()
{
? ? /* 小伙伴們:
? ? ? ? ? ?選擇你們認為最合理的循環結構完成功能吧 */
? ? int sum = 0; ?//定義計算結果變量sum
? ? int i = 1; ? ?//定義循環數字變量i
? ? int flag = 1; //定義符號狀態變量flag
? ??
? ? //使用while循環
? ? while(i<=100)
? ? {
? ? ? ? i++;
? ? ? ? flag*=-1;
? ? ? ? sum-=flag*i;
? ? }
? ??
??
? ? printf("sum=%d\n",sum);?
? ??
? ? return 0; ? ?
}
2017-07-24
首先,flag定義的初值是1,而while語句中的flag值為 flag * (-1)=-1,sum的值為 -(-flag) * i =1,所以第一項的值為 1;i 進行自加運算,值變為2,其次,因為第一次運算的時候flag為 -flag,然后又進行了一次 賦值 -(-flag),所有第二項的flag的值為 1,然后進行sum運算:-(flag)* i =-2 ;這樣,奇數項就變成正數,偶數項就變成負數。?依次計算得到最終結果。
2017-07-14
采納我
2017-07-14
是對的