购房从银行贷了一笔款d,准备每月还款额为p,月利率为r,计算多少个月能还清。设d为300000元,p为6000元,r为1%。对求得的月份取小数点后一位,对第2位小数按四舍五入处理。还清月数的公式为
#include <stdio.h>
#include <math.h>
int main() {
double d = 300000; // 贷款金额
double p = 6000; // 每月还款额
double r = 0.01; // 月利率
double m; // 还款月数
m = log10(p/(p-d*r))/log10(1+r);
m = round(m*10)/10; // 取小数点后一位,四舍五入处理第二位
printf("需要 %.1lf 个月才能还清贷款\n", m);
return 0;
}
解析:这题可以用多次相乘、循环或者pow来做,你觉得哪个好用用哪个,下面放一个pow的例子
int main()
{
double r = 0.07;
double n = 10.0;
double p = 0.0;
p = pow((1 + r), n);
printf("%f", p);
}
运算结果: