?? num.c
字號:
#include<stdio.h>
#include<stdlib.h>
/*定義數組的最大位數*/
#define MAXARRAY 1000
int main()
{
int fac[MAXARRAY],add[MAXARRAY];
int top,n,i,j;
char ch;
clrscr();
while(1)
{
/*輸入要計算的整數*/
while(1)
{
printf("Please input the integer to compute:\n");
scanf("%d",&n);
if(n<0)
{
printf("Please input an integer greater -1\n");
continue;
}
else
break;
}
/*初始化結果數組和進位數組*/
fac[0]=1;
add[0]=0;
for(j=1;j<=MAXARRAY-1;j++)
{
fac[j]=0;
add[j]=0;
}
top=0;
for(i=1;i<=n;i++)
{
/*計算進位數組add*/
for(j=0;j<=top;j++)
{
fac[j]=fac[j]*i;
if(j==0)
add[j]=fac[j]/10;
else
add[j]=(fac[j]+add[j-1])/10;
}
/*更新top的值*/
if(add[top]>=1)
top++;
/*計算結果數組fac*/
for(j=0;j<=top;j++)
{
if(j==0)
fac[j]=fac[j]%10;
else
fac[j]=(fac[j]+add[j-1])%10;
}
}
/*輸出結果數組fac*/
printf("\n%d!=",n);
for(j=top;j>=0;j--)
{
printf("%d",fac[j]);
}
printf("\n\n");
printf("Please input 'c' to continue.\n");
ch=getch();
if(ch!='c')
break;
}
return 0;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -