如何用C语言正确的求double型数的幂?我用的pow(8.3302E-003,1/3),最后结果为1.请问应该用什么函数正确值应为0.202714653245380,我看网上用的都是double pow (double x ,double y) ,怎么我这个结果就是1呢?
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/03 23:18:57
![如何用C语言正确的求double型数的幂?我用的pow(8.3302E-003,1/3),最后结果为1.请问应该用什么函数正确值应为0.202714653245380,我看网上用的都是double pow (double x ,double y) ,怎么我这个结果就是1呢?](/uploads/image/z/1910341-37-1.jpg?t=%E5%A6%82%E4%BD%95%E7%94%A8C%E8%AF%AD%E8%A8%80%E6%AD%A3%E7%A1%AE%E7%9A%84%E6%B1%82double%E5%9E%8B%E6%95%B0%E7%9A%84%E5%B9%82%3F%E6%88%91%E7%94%A8%E7%9A%84pow%EF%BC%888.3302E-003%2C1%2F3%EF%BC%89%2C%E6%9C%80%E5%90%8E%E7%BB%93%E6%9E%9C%E4%B8%BA1.%E8%AF%B7%E9%97%AE%E5%BA%94%E8%AF%A5%E7%94%A8%E4%BB%80%E4%B9%88%E5%87%BD%E6%95%B0%E6%AD%A3%E7%A1%AE%E5%80%BC%E5%BA%94%E4%B8%BA0.202714653245380%2C%E6%88%91%E7%9C%8B%E7%BD%91%E4%B8%8A%E7%94%A8%E7%9A%84%E9%83%BD%E6%98%AFdouble+pow+%28double+x+%2Cdouble+y%29+%2C%E6%80%8E%E4%B9%88%E6%88%91%E8%BF%99%E4%B8%AA%E7%BB%93%E6%9E%9C%E5%B0%B1%E6%98%AF1%E5%91%A2%3F)
如何用C语言正确的求double型数的幂?我用的pow(8.3302E-003,1/3),最后结果为1.请问应该用什么函数正确值应为0.202714653245380,我看网上用的都是double pow (double x ,double y) ,怎么我这个结果就是1呢?
如何用C语言正确的求double型数的幂?我用的pow(8.3302E-003,1/3),最后结果为1.请问应该用什么函数
正确值应为0.202714653245380,
我看网上用的都是double pow (double x ,double y) ,怎么我这个结果就是1呢?
如何用C语言正确的求double型数的幂?我用的pow(8.3302E-003,1/3),最后结果为1.请问应该用什么函数正确值应为0.202714653245380,我看网上用的都是double pow (double x ,double y) ,怎么我这个结果就是1呢?
楼主你好~~
改成这样写试试,已经在VC测试,没有问题的.
printf("%.15f\n",pow(8.3302E-003,1.0/3));
这里主要是1/3,1和3都是整型数,所除得到数会默认为整型,这样就会变成8.3302E-003^0,所以答案变成了1.如果要double型数的幂,就必须要让至少其中一个数为浮点型,这样得出的值才会变成浮点型,如我所写的1/3变为1.0/3~~至于那个%.15f,因为楼主你写的正确值为小数点后15位~所以我就让其输出小数点后15位啦~~如果要改的话~请自行改动,若果什么都没有,只有%f,则默认为小数点后6位.
希望楼主能看明白~~望采纳~谢谢~