# define N 200
int main (void)
{ int a[N],i,st,cp,x,loop;
st=N-1;//从个位开始存储
a[st--]=1;
for(loop=0;loop<100;loop++)
{
cp=0;//进位变量初始化
i=N-1;
while(i>st)
{
x=a[i]*13+cp;
a[i]=x%10;//每个数组元素存大整数中的一位
cp=x/10;//进位
i--;
}
while(cp)
{
a[st--]=cp%10;
cp=cp/10;//处理最后没有处理的进位值
}
}
for(i=st+1;i<N;i++)
printf("%d",a[i]);
printf("\n");
return 0;
}
其实这样还是很浪费空间的,毕竟对一个四字节的int来说,一个数组单元可以存放的值就很大,程序用这样一个能存很大的数的空间去存放一个个位数,浪费率实在太高。当然,可以设置令每个数组元素存上个1~100000的数但是这样输出的时候就要控制每一个数组单元里存的数字是不是以0开头的,也就是判断这个数字是不是确实存到了5位。。。
我写完这段代码的时候离现在其实已经过去相当久了。。这些天没怎么敲代码,感觉以前写的东西生疏了许多,觉得是时候把一些经典的代码拿出来一段一段地再品味一下了。
从进实验室到现在差不多刚好两个月,很幸运能身在3G最幸福的组里,能认识大家萌萌哒女汉纸和男孩纸们,也很感谢拉我入伙的坨坨以及据说夸过我并对我寄予重望的大神童鞋,让我有机会成为这个家庭里的一员~