falogin cn-cfree
2023年4月5日发(作者:lsasecretsview软件)
C语⾔⼤数运算:利⽤数组进⾏数字多次⽅的运算
代码⽤途:
对较⼤范围内的数据进⾏多次⽅运算
如:13的100次⽅;2的1000次⽅等。
输⼊样例:
210
OnePossibleAnswer:
#include
intmain(void)
{
inta[1000]={0};
inti,k,j,len=1,n,t;
scanf_s("%d%d",&t,&n);
a[0]=1;
for(i=0;i
{
for(j=len-1;j>=0;j--)
{
a[j]*=t;
}
for(k=0;k<=len;k++)
{
if(a[k]>=10)
{
a[k+1]=a[k+1]+a[k]/10;
a[k]=a[k]%10;
if(k+1==len)len++;
}
}
}
for(i=len-1;i>=0;i--)
{
printf("%d",a[i]);
}
return0;
}
AnotherPossibleAnswer:
#include
#defineN1000
intcal(intv[],intx,intn)
{
inti,j,k,c,s;
v[N-1]=1;
s=N-2;
for(i=1;i
c=0;
for(j=N-1;j>s;--j){
k=v[j]*x+c;
c=k/10;
v[j]=k%10;
}
while(c){
v[s--]=c%10;
c/=10;
}
}
returns;
}
intmain(void)
{
intx,n,v[N],s,cnt;
printf("请输⼊底数和指数:");
scanf_s("%d%d",&x,&n);
s=cal(v,x,n);
printf("%5d^%-5d=",x,n);
for(inti=s+1,cnt=1;i
{
printf("%d",v[i]);
if(!(cnt%15))
printf("n");
}
printf("n");
return0;
}
其中,第⼆个例⼦的输出为每15位换⾏,让较⼤的输出结果更加规整。
更多推荐
大数运算
发布评论