1樓:匿名使用者
100的階乘的結果太大,會超出int的範圍,所以用普通的方法求是不行的,一定要用高精度的乘法,參考程式如下。
#include
#include
int main()
;long carry,temp;
scanf("%d",&n);
digit=1;
a[1]=1;
for(i=2;i<=n;i++)
while(carry!=0)
}i=digit;
printf("%d",a[i]);
for(i=digit-1;i>=1;i--)system("pause");
return 0;}
2樓:匿名使用者
越界,100的階乘不能這麼求。
#include "stdio.h"
#include "time.h"
#define arr_len 100000//陣列越界導致程式執行結束後記憶體溢位
//以下是大數階乘,供參考
int main(void)
else}}
i = arr_len - 1;
count = 0;
} end = clock();
printf("%ld\n",end-start);
for(i = 0;i< arr_len; i ++)printf("\n");
return 0;}
求100的階乘中末尾數零的個數
3樓:鍾學秀
要看有多少個零即可以找到多少個2和5配對,但是5的個數少於2的所以最後由5的個數決定,5的倍數有100/5=20;
25的倍數(即提供兩個5的)有100/25=4;
所以100!中可以分解因式出來24個5,所以最後答案為24個0.
4樓:匿名使用者
21個,1~100裡有11個零;尾數為5的有10個,尾數為2的有10個。5*2=10,所以21個
5樓:伊清馨環旻
一個連乘積中有一個5乘以一個2,就會在末尾有一個0。一個自然數的階乘末尾的0的個數,就等於它的所有乘數中含有因子5的個數,這是因為因子2的個數比因子5的個數明顯要多的緣故。例如,20!
、21!、22!、23!
、24!的末尾都是有4個0,但是25!末尾會有6個0。
因為25中含有2個因子5。
#include
intmain()
printf("100!末尾有
%d個0\n",s);
system("pause");
return
0; }
6樓:匿名使用者
24100/5=20
100/25=4
100/125=0...100
20+4=24
php100階乘為什麼網頁執行結果為0?
7樓:陽光上的橋
下面這個語句有錯(系統理解i是一個常量,但是你沒有定義,所以值為0):
$num*=i;
應該修改為:
$num*=$i;
但是100!結果太大,你這個計算出來的結果肯定不可能準確。
求整數n n0 階乘的演算法如下,其時間複雜度
include int main void int i,s 1 printf please input a intdata scanf d i for i 1 i s i printf d n s return 0 這是一個遞迴程,可以看出每遞迴一次n的規模小一,所是結果是線性的。1 階乘指從1乘以...
我用C語言寫程式但是求不出相應的結果程式可以執行但結果不對,請各位高手幫幫忙啊
沒看明白你到底想計算什麼,include include int main void printf s 2f n s return 0 很奇怪你這程式能得到結果,應該是死迴圈才對。 你的 s 沒有初始化,所以在運算時系統隨機賦了一個值,所以運算結果也出錯。 你寫的一時間都看不懂,麻煩以後後面加註釋 ...
我暗戀女孩3年,等到的結果卻是她等了他原來的男朋友3年現在兩人又在一起了
裘詠兒 可以想象的出你很愛她,而她對原來的男友又何嘗不是這樣呢?也許這三年,她過的比你還辛苦!所以你應該祝福她終於得到了她的幸福,因為你愛她!那就讓她成為你美好的回憶吧! 對,你應該勇敢地說出來,自己不敢的話可以請朋友幫忙製造機會,或者用最原始的方法 塞小紙條給她,說出來後你可能會好些,成不成功當然...