求大佬解答
#include <stdio.h>
int main()
{
? ? // 定義變量sum, num
? ? int sum, num;??
? ? sum = 0;
? ? for(num = 0;? num<=10? ;? ?num++? ?) //for循環(huán)條件與num的變化值
? ? {
? ? ? ? ?sum+=num
? ? ? ? ?;//計(jì)算每次數(shù)字之間的和sum
? ? }
? ? printf("10以內(nèi)數(shù)的和為:%d", sum);
? ? return 0;
}
為什么在第七行括號(hào)外面加個(gè)分號(hào)結(jié)果就變成11 了啊?
2018-08-21
for是不能在for(;;;)后面加分號(hào)的,加上分后之后 就像這樣for(num = 0;? num<=10? ;? ?num++? ?) ;加上分號(hào)之后就變成了一個(gè)語句而不是一個(gè)結(jié)構(gòu),或者說這時(shí)進(jìn)行的是空循環(huán),它執(zhí)行的是num 自增直到n++大于10,你這里寫的是n++,當(dāng)n的值為11時(shí),這個(gè)for語句結(jié)束、n也由原來的0變成了11、for執(zhí)行完之后(加了分號(hào)),再執(zhí)行下一個(gè)語句就是sum +=num; ?即sum =0+11;輸出sum = 11。你看這樣解釋可以嗎?