c语言1090整数幂
时间: 2024-12-14 19:04:02 浏览: 11
快速幂C语言
在 C 语言中,计算两个整数的幂通常不是直接提供的内置操作,因为整数幂运算可能会超出整数类型的范围,导致溢出。然而,你可以通过循环或者递归来实现这个功能。以下是一个基本的迭代方法,称为"乘方算法",用于计算 a 的 b 次方:
```c
long long power(int base, int exponent) {
long long result = 1;
while (exponent > 0) {
// 如果指数是偶数,将基数乘以自身并减半指数
if (exponent % 2 == 0) {
base *= base;
exponent /= 2;
}
// 如果指数是奇数,将结果乘以基数,并更新指数
else {
result *= base;
exponent--;
}
}
return result;
}
```
注意这里使用了 `long long` 类型来存储结果,以避免当底数较大、指数较大时可能出现的溢出问题。如果需要更高的精度,可以考虑使用 `__int128_t` 或其他适当的宽整数类型。
阅读全文