谁知道y=lnx这个公式用C语言怎样编写?
发布网友
发布时间:2022-06-01 05:09
我来回答
共4个回答
热心网友
时间:2023-09-22 00:05
#include"math.h"
double a=log(x);//e为底
double b=log10(double);//10为底
把数组各个元素的值都设成正的
lg不可能对负数求值。
而a【】默认是负数
////关于楼主的疑问
log(x),x必须大于0
#include"math.h"
#include"iostream"
void main(){
double a[10];
int i;
for(i=0;i<10;i++)
a[i]=i+1;
double b[10];
for(i=0;i<10;i++)
b[i]=log(a[i]);
for(i=0;i<10;i++)
printf("%lf,",b[i]);
}
上面的代码肯定可以,那只是个例子。
你一定要保证log的参数是正数。
热心网友
时间:2023-09-22 00:05
在C语言中,自然对数函数只要包含math.h头文件,
#include<math.h>
然后使用y=log(x);就可以了。
另外,由于0和负数是没有对数的,所以,使用这个公式时要保证x是一个正数。
log:DOMAIN error
意为计算对数时范围超出定义域,象你的这个提示,是说x的值出现了小于或等于0的情况。
热心网友
时间:2023-09-22 00:06
1 y=lnx在C中包含math.h库之后使用log函数即可。
2 LOG domain error的含义:LOG函数定义域错,试图用负数或零作为LOG函数的自变量。
热心网友
时间:2023-09-22 00:06
#include<math.h>
double x,y;
x=CONST;//CONST为一个常量
y=log(x);
log函数返回值类型错误,你可能将y设置成非double 型变量