求对数:
log(x)在C语言中代表lnx,即以e为底的对数。log10(x)代表以10为底的对数,编写代码时需要注意区分。
保留一位小数:
%0.1f 表示保留一位小数
四舍五入:
若要求第二位小数进行四舍五入,可以乘10再加0.5,若第二位小数大于5则会进1,反之不会进1
如:a=3.14 (a*10+0.5)=31.9 a=3.16 (a*10+0.5)=32.1
对结果取整再除10即可
下面以具体题目为例
题目:
设d为贷款额,p为月供,r为月利率,m为还清月数,求解m,对求得的m四舍五入保留一位小数。
ps:m=log(p/p-d*r)/log(1+r),d=300000,p=6000,r=1%
代码:
#include<stdio.h>
#include<math.h>
int main()
{
int d = 300000 ;
int p = 6000 ;
double r = 0.01 ;
double m = 0 ;
m=log10( p /(p - d * r) ) /l og10( 1 + r ) ;
m=(m * 10 + 0.5 ) / 10 ;
printf("%0.1lf\n",m);
return 0;
}
输出结果为:
69.7
请按任意键继续...