
C语言,从键盘输入n值,计算如下公式的值。 s=1-1/(1*2)+1/(1*2*3)-···+(-1)n次方/(1*2*···*n) 15
展开全部
#include<stdio.h>
int main()
{
__int64 n,s=1;
int p=-1;
double sum=0;
scanf("%I64d",&n);
for(int i=1;i<=n;i++)
{
s*=i;
sum+=1.0/(p*(-1)*s);
}
printf("%lf\n",sum);
}
/* 要保证n!不超过2^64*/
int main()
{
__int64 n,s=1;
int p=-1;
double sum=0;
scanf("%I64d",&n);
for(int i=1;i<=n;i++)
{
s*=i;
sum+=1.0/(p*(-1)*s);
}
printf("%lf\n",sum);
}
/* 要保证n!不超过2^64*/
展开全部
#include <stdio.h>
double factorial(int n)
{
double f = 1 ;
for (int t=1 ; t<= n ; t++)
{
f = f*t ;
}
return f;
}
void main()
{
int n, k=1;
double s = 0 ;
printf("Input n\nn=") ;
scanf("%d", &n) ;
for (int t=1; t<=n; t++)
{
s = s + ((double)k)/factorial(t) ;
k = -k ;
}
printf("s=%f\n", s) ;
}
double factorial(int n)
{
double f = 1 ;
for (int t=1 ; t<= n ; t++)
{
f = f*t ;
}
return f;
}
void main()
{
int n, k=1;
double s = 0 ;
printf("Input n\nn=") ;
scanf("%d", &n) ;
for (int t=1; t<=n; t++)
{
s = s + ((double)k)/factorial(t) ;
k = -k ;
}
printf("s=%f\n", s) ;
}
追问
编译有错误··········
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询