1樓:
如果你的模數不是質數的話,請先拆成質數的整次冪。
然後對於每乙個整次冪,用 exLucas 裡面提到的遞推方法解出在這一整次冪下的階乘結果。
隨後只需要用 CRT 合併即可。
由於題主沒有貼出模數,所以我沒法寫出更詳細的過程。
2樓:靜水流深MXY
#include
intmain()
return0;}
3樓:墨黎
while(n<=10)
{a=a*n;
cout<
4樓:螞蟻的進軍
# include
int main()
int i = 1, j = 10;
while (j > 0)
i = i * j;
j--;
printf("%d\n", i);
5樓:草薙直哉
#include
intfactorial
(inti)
dowhile(l
l=0; k=0; m++;} returnj; }int main (void )return0; }好久沒寫C了,不知這個複雜度n!的方法什麼水平? 更新:用了下遞迴,雖然沒到 但是成功優化了不少更新:優化了乙個細節,成功優化到了 基礎沒學好不知道這個複雜度是不是這麼寫的- - 算了下算10的階乘大概需要八千萬億年………… 6樓:zighouse #include static int tab=; int main(void){ int *p=tab; while(*p)printf("%d\n", *p++); return 0; 7樓:lalala125 int main() printf("%d", sum);} 8樓:浩仔 int fac(int x)//x代表幾的階乘{if(x=1) return 1; int y; y=x*fac(x-1); return y; 不知道對不對。 9樓:祈緒晨晨 // 初心者版本 intresult=1 ;// 儲存結果 inti=1 ;// 計數器 while(i <=10) // 一般操作 intresult=1 ;// 儲存結果 inti=11 ;// 計數器 while(0 <--i) // 嵌入式狂魔 uint32_t mem= 0xa0000001 ;// 前 4 位為計數器後 28 位為結果while (mem &0xf0000000) 10樓:物理極客銘 #include #include int mian() 11樓: #include intmain (void )(手動狗頭 12樓:歐陽寒楓 #include using namespace std; int ans=1; int n=10; int main() While(n<=10 && n >=1)ans*=n; ncout 13樓:CWKSC 盡量簡單一點 ? 不聽不聽,我要用 Gamma 函式。() #include #include #include double Integral (doublef( double ,double ),doublez, double lower ,double upper ,double step =0.001 )return sum; }#define gammaUpperLimit 100double gammaFx (doublet, doublez) double Gamma (doublez) double Factorial (doublen) intmain (void )printf ("1! = %lf\n" ,Factorial(1 ));printf ("2! = %lf\n" ,Factorial(2 ));printf ("3! = %lf\n" ,Factorial(3 ));printf ("4! = %lf\n" ,Factorial(4 ));printf ("5! = %lf\n" ,Factorial(5 ));printf ("6! = %lf\n" ,Factorial(6 ));printf ("7! = %lf\n" ,Factorial(7 ));printf ("8! = %lf\n" ,Factorial(8 ));printf ("9! = %lf\n" ,Factorial(9 ));printf ("10! = %lf\n" ,Factorial(10 ));system ("pause" );return0; }double gammaFx (doublet, doublez) double Gamma (doublez) double Factorial (doublen) 還有#include #include #include double StirlingFormula (doublen) intmain ()system ("pause" );return0; }用於取 n 階乘近似值的數學公式,在 n 很大時十分好用。 #include #include #include double StirlingFormula (doublen) intmain ()system ("pause" );return0; }話說在我回答之前已經有十多個回答,題主應該已經獲得了他的答案,所以就開始亂來了,沒有惡意。() 。順便給個正常答案吧 : intans=1 ;inti= 1;while(i <=10) // OR for( inti=1 ,ans=1 ;i<=10; ans*=++i) 14樓:滄狼 int i = 11,num = 1; while(--i) num *= i; printf("%d",num); 這樣第一次*i的時候,i為10,當i乘到1以後,--i為0,退出while,其他東西自己補,我也不編譯執行了 15樓:「已登出」 哈哈,這個怎麼能少得了遞迴呢。 #include intfact (intn) intmain() 16樓: #include int main() { long i=1,s=1; while(i<=10s*=iprintf("%ld!=%ld\n",i,si 17樓:王一珉 好好學習 #include int main()} 18樓:「已登出」 #include int main() 19樓: #include intmain (void) 20樓: 這種題為什麼不自己做?? #include int main(){ int i=10; int sum=1; while(i){ sum*=i--; printf("%d",sum); return 0; 21樓: #include intmain (void) Lvcs 靈活接收資料型別,可以試試使用巨集定義而不用函式 舉個例子 判斷兩個數哪個大 define MAX a,b a b a b 使用巨集定義可以靈活接收各種型別的 a b,而使用函式判斷的話就需要事先設定傳入引數的型別了。 劉燦 傳遞指標同時提供區域長度 不用0來標識字串或區域結束 以typd... 湛藍水晶 用sprintf strcat在設計之初是考慮了鏈式呼叫的,所以返回的是源位址,於是可以用 strcat strcat strcat strcat strcat strcat strcat strcat dest TEST1 ip TEST2 port TEST3 name TEST4 n... Elias Wang 我們大致先把概念理清一下 字元陣列 初始化 在宣告變數的同時,為變數分配儲存空間,並初始化資料34 foo string literal 形式,初始化變數位址39 f o o 0 array 形式 賦值 變數已經被宣告,再對變數已有的儲存空間進行操作34 foo string ...在C語言中,如何安全地使用void ?
C 語言中如何優雅地拼接多段字串?
C語言中字元陣列用 初始化?