购房从银行贷了一笔款d,准备每月还款额为P,月利率为r,计算多少月能还清。(设d为300000元,p为6000元,r为1%,对求得的月份取小数点后一位,对第2位按四舍五入处理

购房从银行贷了一笔款d,准备每月还款额为P,月利率为r,计算多少月能还清。(设d为300000元,p为6000元,r为1%,对求得的月份取小数点后一位,对第2位按四舍五入处理)
提示:计算还清月数m的公式如下


#include<stdio.h>
#include<math.h>
int main()
{
float d = 300000.0, p = 6000.0, r = 0.01, m;
m = log10(p/(p-d*r)) / log10(1+r) + 0.05;
printf("m=%.1f\n",m);
return 0;
}
//希望能帮助你,望采纳
#include<stdio.h>
#include<math.h>
#define r 0.01
int main()
{
    int d = 0; int P = 0;
    double month = 0.0;
    scanf("%d%d", &d, &P);
    int i = 0;
    for (i = d/P+1;;i++)
    {
        if ((i*P) > (d*pow((1 + r), i)))
        {
            month = (d*pow((1 + r), i)) / P;
            break;
        }
    }
    
    printf("%.1lf", month);
    return 0;
}