這道題是求從3-21,差為3的8個(gè)數(shù)階乘的和,編寫一個(gè)求階乘之和的函數(shù)sum(),使用for循環(huán)進(jìn)行階乘的計(jì)算,最終和太大,因此使用卜升科學(xué)計(jì)數(shù)方式表示輸出。

程序代碼:

#include

float sum(int n)

{int i,j;

float t,s=0;

for(i=3;i<=n;i=i+3)

{t=1;

for(j=1;j<=i;j++)

t=t*j;

s=s+t;}

return(s);

}

main()

{printf("this sum=%e\n",sum(21));}

運(yùn)行結(jié)果:

擴(kuò)展資料:

階乘的計(jì)算方法:

一個(gè)正整數(shù)的階乘(旦仔factorial)是所有小于及等于該模弊汪數(shù)的正整數(shù)的積,并且0的階乘為1。自然數(shù)n的階乘寫作n!。1808年,基斯頓·卡曼引進(jìn)這個(gè)表示法。

亦即n!=1×2×3×...×n。階乘亦可以遞歸方式定義:0!=1,n!=(n-1)!×n。