扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
调用前先申明包含的库函数,ln所在math.h中,程序已写好如下:
在长汀等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供做网站、成都网站建设 网站设计制作按需网站建设,公司网站建设,企业网站建设,品牌网站设计,营销型网站建设,成都外贸网站建设公司,长汀网站建设费用合理。
# include stdio.h
# include math.h
int main(void)
{
double a;
float x;
printf("请输入一个待求自然对数值的小数");
scanf("%f",x);
a=log(x);
printf("ln%f=%f\n",x, a);
return 0;
}
C语言不是数学,这里在运算的时候会读值,你设变量,是读不到值得,那么分母就有问题,你这很明显不了解编程,编程不可能把你数学表达式录进来就可以的,你这除法要自己写算法
1 使用math.h中的log函数,其相当于ln
2 示例:求ln(2)的值
#includestdio.h
#includemath.h
int main(){
double n = 2;
double result = log(n);
printf("%lf", result);
getchar();
return 0;
}
3 运行结果
这与卡西欧计算器里的值是一致的
用库函数math.h 这里面的log就是数学里面ln(底数为e的那个家伙)的意思。如下代码例子
#includestdio.h
#includemath.h
main()
{
double k;
k=log(2.71828);
printf(" %f ",k);
k=log(8)/log(2);
printf(" %f ",k);
}
第一k是ln(e)的意思,e约为2.71828,屏幕上打印出值为0.999999,
第二k是求底数为2真数为8的值log2(8)=ln(8) /ln(2) (这个数学转化式我不用多说),打印出来的结果是3.000000
首先在C语言中要用到指数、对数的相关公式,需要引入math.h。另外ln是以e为底数,lg是以10为底数。
代码如下:
#includestdio.h
#includemath.h
void main()
{
double exponent, base;
exponent = 3.14;
printf("ln(%f) = %.2f\n", exponent, log(exponent));//以e为底数的对数
exponent = 100;
printf("lg(%.f) = %.2f\n", exponent, log10(exponent));//以10为底数的对数
base = 5, exponent = 100;
printf("log_%.f(%.f) = %.2f\n", base, exponent, log(exponent)/log(base));//换底公式
return 0;
}
在求log_5(100)时需要用到“换底公式”:log_5(100) = ln(100)/ln(5)。
扩展资料:
math.h文件中包含的函数主要分为以下几类:
1、三角函数、反三角函数、双曲三角函数。
2、指数、对数。
3、取整、绝对值。
4、标准化浮点数。
涉及参数类型为double类型。
参考资料:
百度百科——换底公式
百度百科——math.h
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流