1 条题解
-
0
C :
#include<stdio.h> #include<stdlib.h> #define SIZE 51 int main() { int data[SIZE]={0}; int index=1; int n; int i,j,k; data[1]=1; scanf("%d",&n); for(i=1;i<=n;i++) { for(j=1;j<=index;j++) { data[j]=data[j]*i; } for(k=1;k<index;k++) { if(data[k]>=10) { data[k+1]=data[k+1]+data[k]/10; data[k]=data[k]%10; } } while(data[index]>=10&&index<=SIZE-1) { data[index+1]=data[index]/10; data[index]=data[index]%10; index++; } if(index<=SIZE-1) { for(j=index;j>0;j--) { printf("%d",data[j]); } printf("\n"); } else { printf("Over flow!\n"); exit(1); } } return 0; }
C++ :
#include<stdio.h> #include<stdlib.h> #define SIZE 51 int main() { int data[SIZE]={0}; int index=1; int n; int i,j,k; data[1]=1; scanf("%d",&n); for(i=1;i<=n;i++) { for(j=1;j<=index;j++) { data[j]=data[j]*i; } for(k=1;k<index;k++) { if(data[k]>=10) { data[k+1]=data[k+1]+data[k]/10; data[k]=data[k]%10; } } while(data[index]>=10&&index<=SIZE-1) { data[index+1]=data[index]/10; data[index]=data[index]%10; index++; } if(index<=SIZE-1) { for(j=index;j>0;j--) { printf("%d",data[j]); } printf("\n"); } else { printf("Over flow!\n"); exit(1); } } return 0; }
- 1
信息
- ID
- 401
- 时间
- 1000ms
- 内存
- 2MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者