Description
编写一个程序,计算1977!的值
#include<stdio.h> int main() { int r[100000]={1}; int i,j; int k=0,l=0; for(i=1;i<=1977;i++)//计数:从1乘到n { for(j=0;j<=l;j++) { r[j]=r[j]*i+k; //实现阶乘,同时完成进位:+k. k=r[j]/10000; r[j]=r[j]%10000;//只存后四位,k存超过四位的那个进位数 } if(k)//进位数不为0 { l++; r[j]=k;//进位 k=0;//进完位,重置k } j=l; } printf("%d",r[j--]); for(;j>=0;j--) { printf("%04d",r[j]); } printf("\n"); return 0; }