大数之m的n次方
说明:该算法不是个最好的算法,在m的n次方很大时,比如结果为10000位数,时间有点长
代码如下:
# include<stdio.h>
int main() {
int t;
int n,m;
while(t--)
scanf("%d",&t); //测试组数 {
int a[65]={0};
scanf("%d%d",&m,&n); //表示m的n次方 a[0]=1;
int k=0;
for(int i=1;i<=n;i++)
{
{
for(int j=0;j<65;j++)
int r=a[j]*m+k; a[j]= r%10; k=r/10; } } int i;
for(i;i>=0;i--) //输出结果(逆序输出)
for( i=64;i>=0;i--)
{
if(a[i]!=0)
break;
printf("%d",a[i]);
}
}
printf("\n"); }
return 0;