我正在使用gcc 4.9.2并且有一个程序来打印N个数的4次幂之和.
我已经编写了程序,但总是打印出的总和是输入数字的4次幂,而不是总和.我认为这是柜台的问题,但不知道是什么.
if(n>0 && n<=40)
{
for(c=0;c<=n;c++)
{
s=0;
s=s+c*c*c*c;
}
printf("%d",s);
}
Run Code Online (Sandbox Code Playgroud)
因为你设定了
s=0;
Run Code Online (Sandbox Code Playgroud)
在循环内.
把它放在for循环之外.
if(n>0 && n<=40)
{
s=0;
for(c=0;c<=n;c++)
{
s=s+c*c*c*c;
}
printf("%d",s);
}
Run Code Online (Sandbox Code Playgroud)
BTW:for循环可以更改为:
for(c=1;c<=n;c++)
Run Code Online (Sandbox Code Playgroud)
因为值c = 0不会改变任何东西.