编写一个函数int power,计算并返回base的exponent次方,要求不使用内置幂运算
时间: 2023-12-01 20:01:32 浏览: 55
编写一个函数int power,可以通过循环来计算base的exponent次方,并返回结果。首先定义一个函数int power(int base, int exponent),在函数中使用一个变量result来保存结果,初始值为base。然后利用for循环来遍历exponent次,每次循环将result与base相乘,最后返回result即可。
具体代码如下所示:
```c
#include <stdio.h>
int power(int base, int exponent) {
int result = base;
for (int i = 1; i < exponent; i++) {
result *= base;
}
return result;
}
int main() {
int base, exponent;
printf("请输入底数和指数:");
scanf("%d %d", &base, &exponent);
int result = power(base, exponent);
printf("%d的%d次方为:%d\n", base, exponent, result);
return 0;
}
```
以上就是利用循环编写的计算base的exponent次方的函数int power,以及一个演示示例。
相关问题
c++ 除了power() 还有求一个数的n次方的函数吗
是的,除了 `pow()` 函数外,C++ 还提供了 `pow()` 函数的变体,可以用来计算一个数的 n 次方。
这个函数是 `std::pow()`,它需要两个参数:底数和指数。注意,这两个参数都可以是浮点数类型,而 `pow()` 函数则要求这两个参数都必须是双精度浮点数。
下面是一个例子,用 `std::pow()` 函数计算 2 的 3 次方:
```c++
#include <iostream>
#include <cmath>
int main() {
double base = 2.0;
int exponent = 3;
double result = std::pow(base, exponent);
std::cout << base << " raised to the power of " << exponent << " is: " << result << std::endl;
return 0;
}
```
输出结果为:
```
2 raised to the power of 3 is: 8
```
在上面的例子中,我们用 `std::pow()` 函数计算 2 的 3 次方,结果为 8。
编写一个求x的n次方的函数,并用它求5的3次方的值,用main()调用
下面是用C++编写的函数,用于求x的n次方:
```c++
#include <iostream>
double power(double x, int n) {
double result = 1;
for (int i = 0; i < n; i++) {
result *= x;
}
return result;
}
int main() {
double base = 5;
int exponent = 3;
double result = power(base, exponent);
std::cout << base << "的" << exponent << "次方的值是:" << result << std::endl;
return 0;
}
```
这个函数名为power,接受两个参数:底数x和指数n。它通过循环将x连乘n次,然后返回结果。在函数的调用中,我们用5作为底数,3作为指数,得到5的3次方的值,并将结果打印输出。
输出结果为:5的3次方的值是:125.