维德 发表于 2020-2-14 16:33:11

买房计算

#include<stdio.h>
#include<math.h>

int main()
{
        float price, area, yir, mir;//单价、面积、年利率、月利率、
        float interest,loan;//利息、贷款总额
        float ave_repay,down_payment;//月均还款、首期付款
        float total_price,total_repay;// 房款总额、还款总额
        int ratio,time;// 按揭成数、按揭年数
       
        printf("请输入单价(元/平方):");
        scanf("%f",&price);
        printf("请输入面积:");
        scanf("%f",&area);
        printf("请输入按揭成数:");
        scanf("%d",&ratio);
        printf("请输入按揭年数:");
        scanf("%d",&time);
        printf("请输入当前基准年利率:");
        scanf("%f",&yir);
       
        total_price = price * area ;//      房款总额=面积*单价
        loan = total_price * ( ratio/10 ) ;//   贷款本金=房款总额*按揭成数
        down_payment = total_price - loan ;   //             首期付款=房款总额-贷款本金
        mir = (yir/100)/12;
        time=time*12;
        ave_repay = loan * mir*pow((1+mir),time) / (pow((1+mir),time)-1);
        interest = ave_repay*time-loan;
        total_repay = interest+loan;
       
        printf ("========== 报告结果 ==========\n");
        printf ("贷款总额 :%.2f元\n",total_price);
        printf ("首期付款 :%.2f元\n",down_payment);
        printf ("贷款总额 :%.2f元\n",loan);
        printf ("还款总额 :%.2f元\n",total_repay);
        printf ("支付利息 :%.2f元\n",interest);
        printf ("月均还款 :%.2f元\n",ave_repay);
       
        return 0;
       
}


loan = total_price * ( ratio/10 )
我知道这句是错的   但是我用DEVC++ 打印出来为什么不等于0而是等于720000



qiuyouzhi 发表于 2020-2-14 18:57:03

要是等于0的话,两边必须有一个0

小笨笨难得糊涂 发表于 2020-2-17 19:00:56

本帖最后由 小笨笨难得糊涂 于 2020-2-17 19:03 编辑

我打出来是0呀

把那句改成loan = total_price * ( ratio/10.0 ) ;即可
页: [1]
查看完整版本: 买房计算