首頁  >  文章  >  後端開發  >  c語言實現階乘的方法

c語言實現階乘的方法

藏色散人
藏色散人原創
2020-05-12 11:50:1336909瀏覽

c語言實現階乘的方法

c語言實現階乘的方法

從鍵盤輸入一個數,求出這個數的階乘,即n!。

演算法思想

首先要清楚階乘定義,所謂n 的階乘,就是從1 開始乘以比前一個數大1 的數,一直乘到n ,用公式表示就是:1×2×3×4×…×(n-2)×(n-1)×n=n!

具體的運算:利用迴圈解決問題,設迴圈變量為i,初值為1,i 從1 變化到n;依序讓i 與sum 相乘,並將乘積賦給sum。

① 定義變數 sum,並賦初值 1。

② i 自增 1。

③ 直到 i 超過 n。

程式碼

#include <stdio.h>
int main()
{
    int i,n;
    double sum=1;
    scanf("%d",&n);
    for(i=1;i<=n;i++)
        sum=sum*i;
    printf("%d!=%lf",n,sum);
    printf("\n");
    return 0;
}

偵錯運行結果

輸入5,對應的階乘輸出情況如下所示;

5
5!=120.000000

輸入20,對應的階乘輸出情況如下所示:

20
20!=2432902008176640000.000000

總結

① 由於階乘一般較大,會超出整數甚至是長整數所能表示的範圍,因此定義變量時就不能定義為整數,而應該考慮雙精度數。

② 實訓中定義了一個雙精確型的變量,用來存放結果。因此在輸出時應注意雙精度數的輸出格式。

推薦教學:c語言教學

以上是c語言實現階乘的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn