為啥我這樣也可以運行成功?和標(biāo)準(zhǔn)答案有什么區(qū)別,求大佬解答,謝謝!?。?/h1>
#include <stdio.h>
int main()
{
? ? /* 小伙伴們:
? ? ? ? ? ?選擇你們認(rèn)為最合理的循環(huán)結(jié)構(gòu)完成功能吧 */
? ? int sum = 0;? //定義計算結(jié)果變量sum
? ? int i = 1;? ? //定義循環(huán)數(shù)字變量i
? ? int flag = 1; //定義符號狀態(tài)變量flag
? ??
? ? //使用while循環(huán)
??
? ? 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()
{
? ? /* 小伙伴們:
? ? ? ? ? ?選擇你們認(rèn)為最合理的循環(huán)結(jié)構(gòu)完成功能吧 */
? ? int sum = 0;? //定義計算結(jié)果變量sum
? ? int i = 1;? ? //定義循環(huán)數(shù)字變量i
? ? int flag = 1; //定義符號狀態(tài)變量flag
? ??
? ? //使用while循環(huán)
??
? ? 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也是等價的,只不過標(biāo)準(zhǔn)答案用的是復(fù)合運算符。個人覺得復(fù)合運算符好用一些。