我覺得給的答案有問題,大家來看看。
#include <stdio.h>
int main()
{
? ? /* 小伙伴們:
? ? ? ? ? ?選擇你們認為最合理的循環(huán)結構完成功能吧 */
? ? int sum = 0;? //定義計算結果變量sum
? ? int i = 1;? ? //定義循環(huán)數(shù)字變量i
? ? int flag = 1; //定義符號狀態(tài)變量flag? ??
? ? //使用while循環(huán)
? ? while(i<=100)
? ? {
? ? ? ? i++;?
????????sum=sum+i*flag;
? ? ? ? flag=(-1)*flag;??
? ? }
? ? printf("sum=%d\n",sum);? ??
? ? return 0;? ??
}
這是給的答案,運行出來的結果確實為-50,但是我就得不對啊.....你們想,第一次執(zhí)行循環(huán)時,執(zhí)行i++;此時i就等于2了,然后那么接下來的式子就為2-3+4-5+6······+98-99+100(此多項式結果為51),
但是題目求的是1-2+3-4+5-6·······+99-100。
2018-12-24
我知道了,雖然執(zhí)行結果是-50是正確的,但是如果把i++放前面的話,那么執(zhí)行起來為2-3+4-5....-99+100-101,答案也是-50,有點偏離題意,所以最好是把i++放在循環(huán)的后面,也就是循環(huán)中while(i<=100)
{
?sum=sum+i*flag;
? ? ? ? flag=(-1)*flag;?
? ? ? ? i++;?
}
這樣才“更正確”