用指针的没整出来。不过楼主你这程序好像有点逻辑错误。
#include<stdio.h>
int mult(int n)
{
int result;
if(n==1)
result=1;
else
result=mult(n-1)*(n);
return result;
}
int main()
{
int n,sum=0,i;//x=1;
printf("输入一个整数:");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
//
x=x*i;
sum=sum+mult(i);不能把
n 作为实参传到mult 函数中吧。这样执行一次for循环,mult 函数就求一次 n的阶乘,sum每次加的也是 n的阶乘,这样不能实现1!+2!+。。。n!。楼主看看吧
}
printf("1!+...%d!=%d",n,sum);
putchar('\n');
return 0;
}