#include <stdio.h>
int main() {
// 定义变量:底数a(支持小数)、指数b(非负整数)、结果(初始值1.0,累乘的初始单位)
double a;
int b;
double result = 1.0;
int i; // 循环计数器
// 提示用户输入底数和指数
printf("a:");
scanf("%lf", &a); // double类型输入用%lf
printf("b:");
scanf("%d", &b);
// 合法性校验:排除负指数(循环方案暂不支持,如需支持可后续取倒数)
if (b < 0) {
printf("错误:该方案仅支持非负整数指数,请重新输入!\n");
return 1; // 异常退出程序
}
// 循环累乘计算a^b:执行b次a的相乘操作
for (i = 0; i < b; i++) {
result *= a; // 等价于 result = result * a
}
// 格式化输出结果,保留2位小数显示底数,4位小数显示结果
printf("%.2lf 的 %d 次方 = %.4lf\n", a, b, result);
return 0;
}