用C语言如何写程序,计算并输出下列多项式值: Sn = 1 + 1/1! + 1/2! + 1/3! + 1/4! + ... + 1/n!
3个回答
展开全部
给你个简单易懂的程序
#include<stdio.h>
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);
}
#include<stdio.h>
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);
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#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);
}
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);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<iostream>
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/"<<i<<'!';
}
cout<<'='<<sum;
}
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/"<<i<<'!';
}
cout<<'='<<sum;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询