第1个回答 推荐于2018-04-05
int asw (int n) /*求阶乘*/
{
long m=1;
while(n>=1)
{
m=m*n;
n--;
}
return m;
}
float aswe()
{
int i;
float m=0.0;
for(i=1;i<=10;i++)
{
m+=1/(float)asw(i);
}
return m;
}
main()
{
int n;
float m;
scanf("%d",&n);
m=aswe();
printf("%f\n",m);
}
第2个回答 2011-01-08
递归之~~
#include"iostream"
using namespace std;
int n;
float F(int n){
if(n==1){return 1;}
else return n*F(n-1);
}
float e(int n){
if(n==1){return 1;}
else return 1/F(n)+e(n-1);
}
int main(){
cout<<1+e(10)<<endl;
return 0;
}运行结果是2.71828
第3个回答 2011-01-08
#include<stdio.h>
int jiecheng(int);
void main()
{
float e=1;
for(int i=1;i<=10;i++)
e=e+(float)1/(float)jiecheng(i);
printf("e=%2.7f",e);
}
int jiecheng(int i)
{
int m=1;
for(;i>=1;i--)
m=m*i;
return m;
}本回答被提问者和网友采纳