e = 1 + 1/1!+1/ 2!+1/ 3!+…+1/n!(數列求和)

引入

求 e 的值:輸入 1 個正整數 n,計算下式求出 e 的值(保留 2 位 小數),要求使用嵌套循環。試編寫相應程序。
e = 1 + 1/1!+1/ 2!+1/ 3!+…+1/n!


分析

幾乎都是使用循環做的,我們需要做的就是找規律:
這題有兩層循環第一層是便利所有項,第二層循環是求階層,內循環後需要在第一層循環中累加數列和


代碼

#include <stdio.h>

int main(){
	
	/**
	求 e 的值:輸入 1 個正整數 n,計算下式求出 e 的值(保留 2 位 小數),要求使用嵌套循環。試編寫相應程序。
	e = 1 + 1/1!+1/ 2!+1/ 3!+…+1/n! 
	*/
	
	int n;
	scanf("%d",&n);
	
	int i,j;
	//第一項獨立出來 
	double e = 1.0,jc;
	for(i = 1; i <= n;i++){
		jc = 1.0;
		//這個內循環就是求階層的 
		for(j = 1; j <= i; j++){
			jc*=j;
		}
		e+=1.0/jc;
	}
	
	printf("%.2lf",e);

	return 0;
} 

測試

在這裏插入圖片描述


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章