c语言编写程序,输入两个数a和b,求a的b次幂。要求:实现求a的b次幂的功能用函数实现,在主函数中实现数据a和b的输入和结果的输出。(不能使用math库)
时间: 2024-02-11 20:09:28 浏览: 75
C语言程序设计-求两个整数a与b之和
好的,下面是不使用 `math.h` 库的程序代码:
```c
#include<stdio.h>
// 函数声明
double power(double a, int b);
int main()
{
double a, result;
int b;
// 输入数据
printf("请输入底数a:");
scanf("%lf", &a);
printf("请输入指数b:");
scanf("%d", &b);
// 调用函数
result = power(a, b);
// 输出结果
printf("%.2lf的%d次幂为%.2lf\n", a, b, result);
return 0;
}
// 函数定义
double power(double a, int b)
{
double result = 1.0;
int i;
if (b > 0) {
for (i = 1; i <= b; i++) {
result *= a;
}
} else if (b < 0) {
for (i = 1; i <= -b; i++) {
result /= a;
}
}
return result;
}
```
程序中,我们使用了 `for` 循环来实现幂次的计算。当指数 `b` 大于 0 时,我们按照 a 的 b 次方的定义,让 a 乘以自己 b 次;当指数 `b` 小于 0 时,我们按照 a 的 b 次方的倒数的定义,让 a 除以自己的绝对值 b 次。特别地,当指数 `b` 等于 0 时,我们直接返回 1。
阅读全文