用遞規函式求20的階乘,呼叫函式求階乘的問題

時間 2025-01-04 18:15:14

1樓:陽光上的橋

20的階乘很大,不是那麼好求的,更不應該用遞迴來搞,我的空間有計算大數階乘的程式,可以計算100的階乘。

2樓:泰芷桖

到網上去搜搜,應該能搜到的。

請定義乙個m函式用來完成階乘的運算,然後在主函式中呼叫它計算20!

3樓:網友

#include

#include《判州》

long long m(int n)

long long t;

t=1;for(int i=1;i<=n;i++)t*=i;return t;

int main()

printf("%lld\塌衝纖n",m(20));

system("團仿pause");

編譯通過,執行結果為:

呼叫函式求階乘的問題

4樓:新李話

你在fact函式中返回的t的型別是整型,而函式返回值是浮點型。

再者,喚蔽你在printf的時候有用的嫌腔是整型。

解決辦法:fact的返回值類和者州型改為int

5樓:網友

這悔困裡錯了悶前旦吧。printf("%d" ,fact(m) )

你前面定義fact是浮點型螞擾。輸出也要對應的。 float fact (int x);"

6樓:休保哲

printf("%d" ,fact(m) )改成 printf("%f" ,fact(m) )因為fact(m)返回型別是float

另外咐好也可以。

float fact (int x)

改成int fact (int x)

上核簡雀下兩處都要改。

這種改法更好 因為階乘本來就是改早整數。

j**a用函式呼叫求階乘

7樓:

public class factorial;

public factorial(int i)private int recursion(int i)public static void main(string args)

/以下是用你的程式改的,主要是格式問題,思想是對的。你這個///是迴圈求階乘,我上面那個是遞迴求階乘。

public class 階乘。

public static void main(string args)

c語言編寫乙個求n階乘的函式,在主函式中輸入n,呼叫函式求n階乘。。謝謝

8樓:網友

//因c語言資料型別限制,不能做大數的階乘運算//n的值超過22結果會不準確。

#include

double jc( int n )

int main()

用matlab編寫階乘函式,呼叫該函式生成1!,……10!的階乘表

9樓:匿名使用者

for i=1:10

a(i,:)i fac(i)]

end 其中 fac(n)為求階乘的函式儲存在檔案中。

為什麼 我這段函式 算20階乘 總是結果是錯的?? 我用的是double了啊 而別人這段 自動算20階乘的函式 就對

10樓:半季流年

主要是你的輸入和輸出格式控制串寫錯了!!!

整型在輸入即呼叫scanf時應使用%d,輸出也是一樣!

而浮點型在輸入時應使用%lf接收,輸出時用%f你把上面程式中的%d改成%f就ok了!

#include

int main()

for (b=1;bprintf ("%.0f!=%.0f",a,c);

scanf ("%lf",&f);

return 0;

把輸入改成%lf,因為double是雙精度浮點型的,輸出可以用%f控制,我執行過了,沒問題了!

輸入10,要求輸出10的階乘加久的階乘...加一的階乘的和,要用到呼叫函式...謝謝

11樓:網友

vb不會,用c語言寫了乙個,你自己試著轉換一下吧。

#include

n階乘 */

unsigned long f(unsigned int n)int main()

printf("sum = u",result);

return 0;

c語言遞迴求階乘,c語言怎麼用遞迴呼叫函式的方法求n的階乘?

問明 舉例 用遞迴方法求n include int main int n int y printf input a integer number scanf d n y fac n printf d d n n,y return 0 int fac int n int f if n 0 printf...

用c語言求階乘之和,有註釋,主函式用來呼叫

二樓是正確的答案,不過沒有除錯。給你一個除錯過的,多輸出了幾個數字,最後一個是和得結果,呵呵!include int jc int n void main int jc int n 階乘函式 include void main printf ld n sum 輸出結果 include int jc ...

用函式呼叫求兩個數中的最大值,c語言 用函式呼叫的方式求兩個數當中最大的那個

阿旺讀書 通過如下過程實現求出a b兩個數中的最大值 include int max int a,int b int main void int a,b,c printf 輸入兩個整數 scanf d d a,b c max a,b printf 較大的數是 d n c return 0 int m...