在线编译器 C

#include <stdio.h> int main() { int a, b, i; long long t; scanf("%d %d", &a, &b); t=1; if(a>0 && b>=0) { if(b==0) { printf("1"); } if(b==1) { printf("%d", a); } else { for(i=1;i<=b;i++) { t=t*a; } printf("%lld", t); } } else { printf("wrong"); } return 0; }
1) 这段代码尝试计算整数a的b次幂(a^b),其中a必须为正数,b必须为非负数。如果输入满足条件,它会根据b的值(0、1或其他)分别处理并输出结果;否则输出"wrong"。

2) 提示:注意当b等于0或1时,代码中的条件判断逻辑可能会导致多个printf语句被执行。另外,计算较大幂次时,考虑使用`long long`类型来避免溢出。