#include<stdio.h>
int main(){
int n,m,temp;
scanf("%d %d",&n,&m);
for(int i=0;i<m;i++){
n=n*n;
}
printf("%d",n);
return 0;
}
1) 这段代码试图计算 n 的 m 次幂,但逻辑有误。它通过循环将 n 重复平方 m 次,实际上计算的是 n^(2^m),而不是 n^m。
2) 提示:
- 要计算 n 的 m 次幂,需要一个变量来保存累积结果(初始值为1),然后在循环中乘以 n 共 m 次。
- 注意整数溢出的可能性,尤其是当 n 或 m 较大时。