那你的程序问题就多了,你的程序连小数都没有,等下我写个
----------------解决方案--------------------------------------------------------
是哦,SUM要定义LONG,晕菜了
不过结果不对
输入n是几结果就是几
----------------解决方案--------------------------------------------------------
该成DOUBULE,还是不对
可能是我定义的函数不对,可我看不出毛病来
#include<stdio.h>
double jie(int a, float b)
{
return a=1?1:jie(a-1,b)*b/(a-1);
}
main()
{
int i,n;
double x,sum;
sum=0;
scanf("%d,%lf",&n,&x);
for(i=0;i<=n-1;i++)
sum=sum+jie(i+1,x);
printf("\n%lf",sum);
}
----------------解决方案--------------------------------------------------------
#include <stdio.h>
#include <conio.h>
float Sum(int n,int i)
{
return i==0?1:Sum(n,i-1)*n/i;
}
void main()
{
int i,n;
float sum=0;
scanf("%d",&n);
for(i=0;i<=19;i++)
sum=sum+Sum(n,i);
printf("\n%f\n",sum);
getch();
}
看看这个
----------------解决方案--------------------------------------------------------
当然14楼里float 都可以改成double 防止溢出
----------------解决方案--------------------------------------------------------