重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
#includestdio.h
创新互联建站是由多位在大型网络公司、广告设计公司的优秀设计人员和策划人员组成的一个具有丰富经验的团队,其中包括网站策划、网页美工、网站程序员、网页设计师、平面广告设计师、网络营销人员及形象策划。承接:网站制作、成都网站设计、网站改版、网页设计制作、网站建设与维护、网络推广、数据库开发,以高性价比制作企业网站、行业门户平台等全方位的服务。
#include math.h
void main()
{
float x=5,y;
y=log(x);
printf("%f\n",y);
}
扩展资料:
C语言中使用对数函数的方法
log()函数:返回以e为底的对数值
头文件:
1#include
log() 函数返回以 e 为底的对数值,其原型为:
1double log (double x);
log()用来计算以e为底的 x 的对数值,然后将结果返回。设返回值为 ret,则
1x = eret
如果 x 为负数或 0,则会发生错误并设置 errno 值。错误代码:
EDOM:参数x 为负数;
ERANGE:参数x
为零值,零的对数值无定义。
注意:使用 GCC 编译时请加入-lm。
没有问题,输出m=0.301030;n=0.004321;g=69.66
编译时会提示warning,主要原因有
1、int d=300000 过大,用长整形;
2、log()和log10()函数均是double型,double转成float会有截断误差,将float r=0.01,m,n,g;
中的float改成double就不会有warning了;
3、getch()函数未声明,头文件加入#includeconio.h,就不会有warning了。
但warning不会影响运行结果。
c 里直接提供的是 以 e 为底的自然对数 log ,和 以 10 为底的常用对数 log10
其他对数写个函数就可以
#include stdio.h
#include math.h
double loga(double n, double base);
int main (void)
{
double a, b, c;
a = log(exp(1));
b = log10(10);
c = loga(100, 5);
printf("%lf %lf %lf", a, b, c);
}
double loga(double n, double base)
{ return log(n) / log(base);}
#include math.h
log(x)为以2为底x的对数,可以用log(x)/log(10)表示以10为底x的对数 。
在C++/C语言中,对数函数y = lnx的表示方法为y = log(x),函数的完整原型为:double log(double x)。
#includecstdio
#includealgorithm
#includecmath
using namespace std;
int main()
{
printf("%f\n",log(10));
return 0;
}
扩展资料
C语言 log10() 函数用来求以 10 为底的对数值。
头文件:math.h
语法/原型:double log10(double x);
参数 x 是一个双精度数。
返回值:以 10 为底的 x 的对数值。
【实例】使用C语言 log10() 函数求以 10 为底的 40 的对数。
#include stdio.h
#include math.h
int main() {
double m = 40; //为变量赋初值
double n = log10(m); //求以10为底的参数40的对数
printf("%lf\n", n);
return 0;
}
运行结果:
1.602060
首先在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
#includestdio.h
#includemath.h
intmain(){
printf("%f\n",log(10));//以e为底的对数函数
printf("%f\n",log10(100));//以10为底的对数函数
printf("%f\n",log(8)/log(2));//计算log2^8,运用换底公式
printf("%f\n",exp(1));//计算自然常数e
return0;
}
扩展资料
模拟一个log日志的写入
#includestdio.h
#includestdarg.h
#includetime.h
intwrite_log(FILE*pFile,constchar*format,…)
{
va_listarg;
intdone;
va_start(arg,format);
time_ttime_log=time(NULL);
structtm*tm_log=localtime(time_log);
fprintf(pFile,"%04d-%02d-%02d%02d:%02d:%02d",tm_log-tm_year+1900,tm_log-tm_mon+1,tm_log-tm_mday,tm_log-tm_hour,tm_log-tm_min,tm_log-tm_sec);
done=vfprintf(pFile,format,arg);
va_end(arg);
fflush(pFile);
returndone;
}
intmain()
{
FILE*pFile=fopen(“123.txt”,“a”);
write_log(pFile,"%s%d%f\n","isrunning",10,55.55);
fclose(pFile);
return0;
}