S=1+1*2+1*2*3+1*2*3*4+..n!
因此,我必须为用户给出 n 的位置编写代码。我写了这段代码
#include <stdio.h>
int main (void)
{
int i, n, j, s, p;
printf("Put a number:");
scanf("%d",&n);
s = 0;
for (i = 1; i <= n; i++);
{
p=1;
}
for (j=1;j<=i;j++)
{
s=s+(p*i);
}
printf("\n Sum=%d",s);
return 0;
}
它可以编译,但是当我运行它并输入例如:2,结果应该是 3 时是 9。我做错了什么?