解题思路:
注意事项:
参考代码:
#include<stdio.h>
int main()
{
int a[40]={[0 ... 39]=-1};
int b[40]={0};
a[0]=1;
int counter,s;
for(int i=1;i<=30;i++){
for(int j=0;a[j]!=-1 || s!=0;j++){
if(a[j]!=-1)s+=a[j]*i;
a[j]=s%10;
s/=10;
b[j+1]+=(a[j]+b[j])/10;
b[j]=(a[j]+b[j])%10;
if(a[j+1]==-1 && s==0){
counter=j;
if(b[j+1]!=0)counter=j+1;
}
}
}
double num=0;
for(int k=0;k<3;k++){
num=num*10+b[counter-k];
}
num/=100;
printf("%.2fe+%d\n",num,counter);
return 0;
}
0.0分
0 人评分