用C语言如何写程序,计算并输出下列多项式值: Sn = 1 + 1⼀1! + 1⼀2! + 1⼀3! + 1⼀4! + ... + 1⼀n!

初学者有很多不懂,请高手指教,很急!!!
2024-10-31 09:21:30
有3个网友回答
网友(1):

给你个简单易懂的程序
#include
void main()
{
float sum=0,p=1,deno=1,t; /*deno是分母的意思*/
int n;
scanf("%d",&n);
while(p<=n)
{
deno=p*deno;
t=1/deno;
sum+=t;
p++;}
不懂的话,还可以问的啊
printf("sum=%f\n",sum);
}

网友(2):

#include "stdio.h"
long fun(int);
double Sn(int);
void main()
{int n;
printf("Input n:");
scanf("%d",&n); /*输入整数N*/
printf("%lf",Sn(n)); /*输出结果*/
getch();
}

long fun(int n) /*递归求N!*/
{ long sum ;
if(n==1)return 1;
sum=n*fun(n-1);
return(sum);
}

double Sn(int n) /*递归求Sn*/
{ double sum;
if(n==1)return 1;
sum=1/(double)fun(n)+Sn(n-1);
return (sum);
}

网友(3):

#include
using namespace std;

float factorial(int x)
{
float sum;

if(x==0)
sum=1;
else
if(x>0)
sum=x*factorial(x-1);

return sum;
}

void main()
{
int i,n;
long sum=0;

cout<<"请输入项数:";
cin>>n;

cout<<"Sn=1";
for(i=1;i<=n;i++)
{
sum=sum+1/factorial(i);
cout<<"+1/"< }
cout<<'='<}