代码如下:
#include <stdio.h>
#include <math.h>
int main()
{
int i,j,n;
double s = 0,item;
long long jc=1;
int flag = 1;
scanf("%d",&n);
for (i=1;i<=n;i++)
{
jc=1;
for(j=1;j<=i;j++)
jc*=j;
item = flag * pow((double)2,i)/jc;
s += item;
flag = -flag;
}
printf("%.2lf",s);
return 0;
}
定义一个求解成的函数。然后用pow指数除以阶乘为item的值
#include <stdio.h>
#include <math.h>
int main()
{
double item = 0,sum=0,jc;
int n,i,j,flag=1;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
jc=1;
for(j=1;j<=i;j++)
jc *= j;
item = pow(2.0,i)/jc;
sum += flag * item;
flag *= -1;
}
printf("%.2lf",sum);
return 0;
}