for(int i =1; i <= n;++i){for(int k =0; k < Max;++k){
m = temp[k]* i + r;
temp[k]= m %10;
r = m /10;}}
网上一直找一个整型数组的实际元素元素长度,打算来控制输出,但是一直没有好的解决方案
这个算法简单解决了大型 整型数组输出的问题
for(j = Max -1; j >=0; j--){if(temp[j])break;}for(int k = j; k >=0; k--){
cout << temp[k];}
代码
#include<iostream>#define Max 5000usingnamespace std;intmain(){int temp[Max]={0}, n, r =0, m, j;
cin >> n;
temp[0]=1;for(int i =1; i <= n;++i){for(int k =0; k < Max;++k){
m = temp[k]* i + r;
temp[k]= m %10;
r = m /10;}}for(j = Max -1; j >=0; j--){if(temp[j])break;}for(int k = j; k >=0; k--){
cout << temp[k];}return0;}