编写函数,求x的n次幂

#include

double mypower(double x, int n) {
    if (n == 0) {
        return 1;
    } else if (n < 0) {
        if (x == 0) {
            printf("x不能为0\n");
            return 0;
        } else {
            return 1 / mypower(x, -n);
        }
    } else {
        return x * mypower(x, n - 1);
    }
}

int main() {
    double x;
    int n;
    printf("请输入一个实数x:");
    scanf("%lf", &x);
    printf("请输入一个整数n:");
    scanf("%d", &n);
    printf("x的n次幂为:%lf\n", mypower(x, n));
    return 0;
}

你可能感兴趣的:(算法)