float factorial(int n)下面的大括号括错了,你自己看看,仔细找找,while的括号,其他的就按上面说的那样,如果对了就采纳下,呵呵。
帮你改你 你看看 有问题再hi
#include
int main(void)
{
int n;
float factorial(int n);
scanf("%d",&n);
printf("Enter n: %d\nsum=%.3f\n",n,factorial(n));
return 0;
}
float factorial(int n)
{
int i,m=1;
i=1;
double p,fact;
fact=0;
while(i<=n){
p=1.0/m;
if(i%2==0){
p=-p;
}
else{p=p;
}
fact=fact+p;
m=m+3*i;
i=i+1;
}
return fact;
}
#include
int main(void)
{
int n = 0;//养成初始化的好习惯
scanf("%d",&n);//位置换了
float factorial(n);//实参不用写类型
printf("Enter n: %d\nsum=%.3f\n",n,factorial(n));
return 0;
}