本篇內(nèi)容主要講解“怎么用C語言代碼求大數(shù)的階乘”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“怎么用C語言代碼求大數(shù)的階乘”吧!
創(chuàng)新互聯(lián)建站服務緊隨時代發(fā)展步伐,進行技術革新和技術進步,經(jīng)過10多年的發(fā)展和積累,已經(jīng)匯集了一批資深網(wǎng)站策劃師、設計師、專業(yè)的網(wǎng)站實施團隊以及高素質(zhì)售后服務人員,并且完全形成了一套成熟的業(yè)務流程,能夠完全依照客戶要求對網(wǎng)站進行成都網(wǎng)站制作、成都網(wǎng)站建設、外貿(mào)營銷網(wǎng)站建設、建設、維護、更新和改版,實現(xiàn)客戶網(wǎng)站對外宣傳展示的首要目的,并為客戶企業(yè)品牌互聯(lián)網(wǎng)化提供全面的解決方案。
首先定義一個函數(shù)用來將運算結(jié)果存入數(shù)組
int into(int k, int x[], int * length) { int n, temp, jw = 0;//temp臨時變量,jw為一次計算結(jié)果的進位 for (n = 0; n <= *length; n++) { temp = x[n] * k + jw; x[n] = temp % 10; jw = temp / 10; } while (jw) { x[n] = jw % 10;//當有進位時存入進位 jw = jw / 10; n++;//數(shù)組填充長度變化 } *length = n - 1;//計算次數(shù)變化 return 0; }
完成需要使用的函數(shù)構建后,定義主函數(shù)和需要的變量及數(shù)組。
使用for語句調(diào)用函數(shù)into()完成數(shù)組填充
最后輸出數(shù)組即為階乘結(jié)果
for (i = 2; i <= m; i++) { into(i, x, &p); } for (i = p; i >=0; i--) printf("%d", x[i]);
完整源代碼如下:
#include#include int into(int k, int x[], int * length) { int n, temp, jw = 0; for (n = 0; n <= *length; n++) { temp = x[n] * k + jw; x[n] = temp % 10; jw = temp / 10; } while (jw) { x[n] = jw % 10; jw = jw / 10; n++; } *length = n - 1; return 0; } int main() { int x[100000]; int i, m; int p = 0; printf("請輸入要計算的階乘數(shù):\n"); scanf("%d", &m); x[0] = 1; for (i = 2; i <= m; i++) { into(i, x, &p); } for (i = p; i >=0; i--) printf("%d", x[i]); system("pause"); return 0; }
到此,相信大家對“怎么用C語言代碼求大數(shù)的階乘”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關內(nèi)容可以進入相關頻道進行查詢,關注我們,繼續(xù)學習!