c语言任意数的乘方运算

有没有用c语言代码写一个运算任意数的乘方运算?也顺便写一下文章扩展名。谢谢!

#include <stdio.h>
int main (){
    int a,n;
    long result=1;
    printf("请输入底数: ");
    scanf("%d",&a);
    printf("请输入指数: ");
    scanf("%d",&n);
    for(int i=1;i<=n;i++){
        result=result*a;
    }
    printf("结果为:%ld",result);
    return 0;
}

```c


```

下面是一个简单的C语言代码来实现任意数的乘方运算:

double power(double base, int exponent) {
    double result = 1;
    while (exponent != 0) {
        if ((exponent & 1) != 0) {
            result *= base;
        }
        exponent >>= 1;
        base *= base;
    }
    return result;
}

这里的power函数接收两个参数,base和exponent,分别代表底数和指数。在函数内部,我们使用了一个循环来计算底数的指数次幂。

扩展名:.c

注意:该算法默认指数为整数,如果需要处理浮点数指数需要其他方法,如pow()函数。

#include <stdio.h>

int main(int argc, char *argv[]) {

    double x, rul = 1.0;
    int n;
    printf("Enter the number: ");
    scanf("%lf", &x);

    printf("Enter the power of number (integer): ");
    scanf("%d", &n);

    if (n == 0)
        rul = 1;
    else if (n > 0) {
        for (int i = 0; i < n; i++) {
            rul *= x;
        }
    } else {
        for (int i = 0; i > n; i--) {
            rul *= 1/x;
        }
    }

    printf("%.1lf to the %d power is %.2lf\n", x, n, rul);

    return 0;
}

img

img

img

文件名:test_18.c
编译器:CLion