c语言里log函数的问题在math.h里,只有以e和10为底的函数要是以2为底,我用换底公式H=rate*log(rate)/log(2)rate是我程序里已求的float变量,H是double 为什么最后输出是-1.#QNAN难道这精度不够?还是C里面用

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/28 21:10:55
c语言里log函数的问题在math.h里,只有以e和10为底的函数要是以2为底,我用换底公式H=rate*log(rate)/log(2)rate是我程序里已求的float变量,H是double 为什么最后输出是-1.#QNAN难道这精度不够?还是C里面用

c语言里log函数的问题在math.h里,只有以e和10为底的函数要是以2为底,我用换底公式H=rate*log(rate)/log(2)rate是我程序里已求的float变量,H是double 为什么最后输出是-1.#QNAN难道这精度不够?还是C里面用
c语言里log函数的问题
在math.h里,只有以e和10为底的函数
要是以2为底,我用换底公式H=rate*log(rate)/log(2)
rate是我程序里已求的float变量,H是double
为什么最后输出是-1.#QNAN
难道这精度不够?还是C里面用换底公式都有这个问题?
这个是套在一个for循环里的,这个循环求rate没问题,但就在H这就不行了
rate是大于0小于1的

c语言里log函数的问题在math.h里,只有以e和10为底的函数要是以2为底,我用换底公式H=rate*log(rate)/log(2)rate是我程序里已求的float变量,H是double 为什么最后输出是-1.#QNAN难道这精度不够?还是C里面用
rate可能为0,导致log()函数无意义.你可以试试讨论rate为0的情况.

c语言里log函数的问题在math.h里,只有以e和10为底的函数要是以2为底,我用换底公式H=rate*log(rate)/log(2)rate是我程序里已求的float变量,H是double 为什么最后输出是-1.#QNAN难道这精度不够?还是C里面用 C语言数学函数的求解算法是什么math.h中的数学函数如sin(x),的求解算法是什么呢,是大学里学过的计算方法中的无限展开逼近法如泰勒公式,牛顿插值法等吗? c语言一个概念问题就是开始声明时候includemath.h 那之后我等式里用10%可以吗,还是10%可以直接用或者需要其他的声明 C语言怎么编程求一个数任意次根要求不调用math.h里的函数,直接通过数学方法得出,比如求5^(0.8),怎么求啊,这是数学问题吧有具体列子吗?给个代码啊,二楼你的回答不是我的提问啊,是求一个数 C语言math.h函数pow的问题请问下,math函数中的pow函数怎么定义的?为啥x(x>0整数)的0次幂是1?而1次幂是x?后面做个循环就可以了, C语言中的一些特殊函数fmax()是可以直接求最大值吗,必须是两个数里的最大吧,还有个power()的函数是干什么的,有这两个时,用加math.h吗,再说些特殊函数和用法 C语言中,我想在一个函数里用另一个函数的变量怎么办? C语言编程圆台体积问题圆台体积计算公式为 在C语言里怎么写?我写的是v=3.14*h(pow(r1,2)+pow(r2,2)+r1*r2)/3; 报错了.大一新生求教. C语言里的函数和数学的函数是什么关系?学C语言会怎么样? 关于C语言中sqrt函数的运用!#include stdio.h#include math.h void main() {int m,i,k,n=0; for(m=101;m 求Math库里的所有用于数学计算的函数C++的Math库 注册里的log C语言,多文件问题.有a.c/b.c和c.c在B里定义了一个I全局变量,A和C里没有声明,那么,B里的这个变量是每调用到它里面的函数它都被定义,调用完再释放掉.还是说这个变量在程序运行的时候一直是 C语言里,把函数放在另一个file里,和直接放在主函数上面有什么区别 C语言图形函数中那些函数在VC里不能用啊 C语言问题,16进制内转任意进制数,转成10进制时的函数对了,但转为任意进制时出错.#includestdio.h#includestring.h#includemath.hvoid main(){while(1){int change10(int x,char y[]);int change(int x,int y);int k,l,temp;scan 在C语言里怎么表示e的x次方 n=(int)sqrt((double)i)中为什么要把i转变成double型?是不是math.h里的函数都要用double型?为什么呢?