7-78 求e的近似值 (15 分)

版权声明:本文为博主原创文章,未经博主允许不得转载。博客地址: https://blog.csdn.net/qq_40268826/article/details/85273974

自然常数e可以用级数1+1/1!+1/2!+⋯+1/n!来近似计算。本题要求对给定的非负整数n,求该级数的前n项和。

输入格式:

输入第一行中给出非负整数n(≤1000)。

输出格式:

在一行中输出部分和的值,保留小数点后八位。

输入样例:

10

输出样例:

2.71828180

一开始用的是unsigned long int 后来发现阶乘到16时候溢出,改成double才成功

#include <stdio.h>

int main (){
	int n,i;
	double sum ,factorial; 
	sum = factorial = 1.0;
	scanf("%d",&n);
	for( i=1; i<=n ; i++){
		factorial *= i;
		sum += 1/factorial;
//		printf("i=%d\tf=%f\tsum=%f\n",i,factorial,sum);
	}
	printf("%.8f",sum);


	return 0 ;
} 

猜你喜欢

转载自blog.csdn.net/qq_40268826/article/details/85273974
今日推荐