[C/C++语法]—pow函数应用

pow函数以及应注意的问题

pow(x, y)函数用于解决求xy问题
pow函数的头文件为 <math.h>

会遇到的问题描述

#include <stdio.h>
#include <math.h>

int main(void)
{
    int n, m;
    while(~scanf("%d%d", &n, &m))
    {
        int ans;
        ans = pow(n, m);
        printf("%d\n", ans);
    }
    return 0;
}

运行结果如下
奇怪 运行结果不应该是25 125 100嘛!

pow函数的函数定义如下

double pow  (double base, double exponent);

可以看出pow函数的参数及返回值都为double类型!

解决办法

那么我们如何解决呢
很简单 将参数和返回值改成double类型就好辣!

#include <stdio.h>
#include <math.h>

int main(void)
{
    double n, m;
    while(~scanf("%lf%lf", &n, &m))
    {
        double ans;
        ans = pow(n, m);
        printf("%d\n", (int)ans);
    }
    return 0;
}

运行结果如下!
是不是成功了呢!
其实很多函数返回值及参数都为double类型
我们也行应查阅文档后谨慎使用 避免不必要的错误
参考:https://blog.csdn.net/qq_20504945/article/details/84964954
(仅供个人学习使用)

发布了20 篇原创文章 · 获赞 2 · 访问量 949

猜你喜欢

转载自blog.csdn.net/zhbbbbbb/article/details/103382635
今日推荐