c 计算2的n次方
时间: 2024-09-28 13:15:42 浏览: 32
在C语言中,计算2的n次方可以使用循环或者递归的方式来实现。这里提供两种常见的方法:
1. **循环法** (迭代)
```c
#include <stdio.h>
unsigned long long power(int n) {
unsigned long long result = 1;
for (int i = 0; i < n; ++i) {
result *= 2;
}
return result;
}
int main() {
int base = 2;
int exponent;
printf("请输入指数:");
scanf("%d", &exponent);
printf("2 的 %d 次方的结果是 %llu\n", exponent, power(exponent));
return 0;
}
```
2. **递归法**
递归版本通常用于教学目的,但在实际应用中可能会因为效率较低而不太推荐。
```c
#include <stdio.h>
unsigned long long power(int n) {
if (n == 0) // 递归基础情况,2^0 = 1
return 1;
else
return 2 * power(n - 1); // 递归调用
}
int main() {
int exponent;
printf("请输入指数:");
scanf("%d", &exponent);
printf("2 的 %d 次方的结果是 %llu\n", exponent, power(exponent));
return 0;
}
```
阅读全文