1樓:
各位,現在要求的是位數阿,根本沒必要把乘積求出來的,標準答案:
double numofc = 0;
for(int i = 1 ; i < 100 ; i ++numofc +=log(i);
numofc = numofc/log(10);/轉成以10為底。
cout《求出來是,也就是說,1倒100的乘積是乙個158位的數字。
2樓:網友
1樓的**有問題,sum沒有初始化,結果永為0。還有從1乘到100用int不會溢位嗎?哈哈。
long jc(long n){
if(n==1)
return 1;
elsereturn n*jc(n-1);
void main(){
long i=100;
cout<<"100的階乘等於"char str=jc(100)+"
cout<<"100的階乘的位數為"<< 最大的一位數縮小100倍比最小的一位數小多少 3樓:無語 最大的一位數是9,最小的一位數是0 1*2*.......*100+1*2*3*......*99+1*2*3+1*2+1的個位數是? 4樓:網友 1*2*..100的個位數是0 1*2*3*..99的個位數是0 因此1*2*..100+1*2*3*..99+1*2*3+1*2+1的個位數和1*2*3+1*2+1的個位數相同。 所以1*2*..100+1*2*3*..99+1*2*3+1*2+1的個位數是9 5樓:網友 前96個式子個位都是0,1*2*3*4=24,1*2*3=6,1*2=2,還有乙個1,4+6+2+1=13,所以個位數是3 6樓:剛上完課 1*2*3*..100個位是0,1*2*3*..99可以看成,1*2*3*.. 9*10也是0,以此類推11*12*13*..20也是0到最後*99還是0,1*2*3 1*2 1=9所以個位是9 a是乙個1位數,b是1個2位數,c是1個3位數,它們的積是2004,問它們的和是多少? 7樓:為啥叫我加肥貓 分解2004 可得2004=2*2*3*167 所以三位數為167,即c=167,分解的除了167還剩2,2,3 任意兩個都的乘積都是個位數,所以要得到兩位數的一定要把所有的都乘起來,故兩位數b=2*2*3=12 一位數a只能等於1了 所以a=1,b=12,c=167,a+b+c=180 include void main 隨手寫的 參考而已 作業自己做去 一看就是剛學c的,自己找資料好好看去,不用心怎麼能學會。給你 也是害你。這是個演算法,你想想個位是3的不就那幾個嗎肯定是除以10餘3啊,再選出除以7餘0的相加不就解決了 int sum 0 for int i 9 i 100 i ... 只要乘出10就會多一個0 那麼首先就是100有兩個 各個十位數10,20,30,90有9個,所以這裡一共有11個0然後就是5乘以一個偶數就能得到一個0,因為偶數相當多,所以只要看5的個數,有5,15,25。95總共10個,但注意25可以分成5 5,75可以分成5 5 3,所以一共有12個5,加上50... 24個0。原因如下 來出現0常考源慮的有兩 種情況。一是0乘以任bai何數仍為0。從1到du100,zhi有10,20,30,40 100,這10個數共有11個0。二是偶數與末位是5的數字相乘得到0。5,15,25 95,這10個數字和偶數相乘能得到10個0。特殊情況 25,50,75是能產生2個0...C語言輸出1到100之內的個位數是3且能被7整除的所有數之和
從1乘到100,得數末尾共有多少個0,請詳述理由
從1乘到100,積一共有幾個零一定說明為什麼