為啥我這樣也可以運行成功?和標準答案有什么區別,求大佬解答,謝謝!?。?/h1>
#include <stdio.h>
int main()
{
? ? /* 小伙伴們:
? ? ? ? ? ?選擇你們認為最合理的循環結構完成功能吧 */
? ? int sum = 0;? //定義計算結果變量sum
? ? int i = 1;? ? //定義循環數字變量i
? ? int flag = 1; //定義符號狀態變量flag
? ??
? ? //使用while循環
??
? ? for(i=1;i<=100;i++)
? ? {
? ? ? ? sum=sum+i*flag;
? ? ? ? flag=flag*-1;
? ? }??
? ? printf("sum=%d\n",sum);?
? ??
? ? return 0;? ??
}
#include <stdio.h>
int main()
{
? ? /* 小伙伴們:
? ? ? ? ? ?選擇你們認為最合理的循環結構完成功能吧 */
? ? int sum = 0;? //定義計算結果變量sum
? ? int i = 1;? ? //定義循環數字變量i
? ? int flag = 1; //定義符號狀態變量flag
? ??
? ? //使用while循環
??
? ? for(i=1;i<=100;i++)
? ? {
? ? ? ? sum=sum+i*flag;
? ? ? ? flag=flag*-1;
? ? }??
? ? printf("sum=%d\n",sum);?
? ??
? ? return 0;? ??
}
2020-11-03
sum=sum+i*flag和sum+=i*flag是等價的,同理flag=flag*-1和flag*=-1也是等價的,只不過標準答案用的是復合運算符。個人覺得復合運算符好用一些。