# include # include # define MAXN 1000 /*问题描述:编写程序,对给定的n(n≦100),计算并输出k的阶乘k!(k=1,2,…,n)的全部有效数字。*/ void pnext ( int a[ ],int k ) //已知a中的(k-1)!,求出k!在a中。 { int *b,m=a[0],i,j,r,carry; b= ( int * ) malloc ( sizeof ( int ) * ( m+1 ) ); for ( i=1; i<=m; i++ ) b[i]=a[i]; for ( j=1; j0; i-- ) printf ( “%d”,a[i] ); printf ( “\n\n” ); } void main() { int a[MAXN],n,k; printf ( “Enter the number n: “ ); scanf ( “%d”,&n ); a[0]=1; a[1]=1; write ( a,1 ); for ( k=2; k<=n; k++ ) { pnext ( a,k ); write ( a,k );//输出长整数的各位 getchar(); } }