指数运算
时间限制:
600 ms | 内存限制:
65535 KB
难度:
2
-
描述
-
写一个程序实现指数运算 X^N。(1<X<10,0<N<20)
-
输入
-
输入包含多行数据
每行数据是两个整数X N
数据以EOF结束
输出
- 于输入的每一行输出X^N的值 样例输入
-
2 1 3 2
样例输出
-
2 9
来源
- 水题比赛 上传者
-
输入包含多行数据
思路:应该使用数组来进行存放,具体做法代码中有介绍。
#include<stdio.h>
int main()
{
int n,m;
while(~scanf("%d %d",&n,&m))
{
int i,j,term,a[1100]= {0},k=0;
a[0]=1;
for(i=1; i<=m; i++)
{term=0;
for(j=0; j<=k; j++)
{a[j]=a[j]*n+term; //term表示进制数,
if(a[j]>9) // 如果a[j]>9表示要进数
{term=a[j]/10; a[j]=a[j]%10;} //进数和取余
else term=0; } //如果不大于9不需进数。
if(term) //在最后判断需要进制,如果需要则代表数位需要进一。
{ k++; a[k]=term; }
}
for(i=k; i>=0; i--)
printf("%d",a[i]);
printf("\n");
}
return 0;
}