2015-07-11 57 views
-3

我使用gcc 4.9.2並有一個程序來打印N個數字的4次冪的總和。for循環不增加計數器在gcc

我已經寫了程序,但總是打印的總數是輸入的數字的四次方,而不是總和。 我認爲這是一個櫃檯的問題,但不知道是什麼。

if(n>0 && n<=40) 
{ 
    for(c=0;c<=n;c++) 
    { 
     s=0; 
     s=s+c*c*c*c; 
    } 
    printf("%d",s); 
} 

回答

6

因爲你設置了

s=0; 

內循環。

將它放在for循環之外。

if(n>0 && n<=40) 
{ 
    s=0; 
    for(c=0;c<=n;c++) 
    { 
     s=s+c*c*c*c; 
    } 
    printf("%d",s); 
} 

順便說一句: for循環可以改成:

for(c=1;c<=n;c++) 

因爲值c = 0沒有任何改變。

+0

明白了,愚蠢的我。謝謝 –