用C语言做一个房贷计算计算器,可以选择等额本金或等额本息两种模式,可以直接输入总额或通过输入面积*价格计算~

代码:

#include<stdio.h>
#include<stdlib.h>
#include<math.h>
void f(double all_num);
int main()
{system("color F0");system("title 房贷计算");char c;void chooseA(); void chooseB();while (1){printf("请选择模式:\n""A.根据面积、单价计算\n""B.根据贷款总额计算\n");scanf_s("%c", &c, 4);switch (c){case 'a':case 'A':chooseA(); break;case 'b':case 'B':chooseB(); break;default:printf("模式选择有误,请输入A/B/a/b选择您想要使用的模式。\n\n");}}return 0;
}
void chooseA()
{double price, area, all_num;printf("单价(元/平方米):");scanf_s("%lf", &price);printf("面积(平方米):");scanf_s("%lf", &area);all_num = price * area;f(all_num);
}
void chooseB()
{double all_num;printf("请输入贷款总额:");scanf_s("%lf", &all_num);f(all_num);
}
void f(double all_num)
{void choose1(double all_num, int num); void choose2(double all_num, int num);char m, k, kong; int g, o;printf("按揭成数:");scanf_s("%d", &o);scanf_s("%c", &kong, 4);all_num = all_num * o / 10;printf("有无打折优惠:");scanf_s("%c", &m, 4);scanf_s("%c", &kong, 4);switch (m){case 'y':case 'Y':printf("折数:"); scanf_s("%d", &g); scanf_s("%c", &kong, 4); all_num = all_num * g / 10; break;case 'n':case 'N':all_num = all_num; break;default:printf("模式选择有误,请输入Y/N/y/n选择有无打折优惠。\n\n");}printf("\n请选择还款模式:\n""A.等额本息\n""B.等额本金\n");scanf_s("%c", &k, 4);scanf_s("%c", &kong, 4);switch (k){case 'a':case 'A':choose1(all_num, o); break;case 'b':case 'B':choose2(all_num, o); break;default:printf("模式选择有误,请输入A/B/a/b选择您想要使用的模式。\n\n");}
}
void choose1(double all_num, int num)
{double M_repay, Y_rate, sum = 0, w; char kong;int m, i = 1;//m,还款月数;i,月数printf("贷款年利率:");scanf_s("%lf", &Y_rate);printf("总还款月数:");scanf_s("%d", &m); scanf_s("%c", &kong, 4);w = pow((1 + Y_rate / 12), m);M_repay = all_num * Y_rate / 12 * w / (w - 1);//每月应还=贷款本金×[月利率×(1+月利率)^还款月数]÷[(1+月利率)^还款月数-1]printf("\n每月应还%lf\n", M_repay);sum = M_repay * m;printf("总还款金额:%lf\n", sum);printf("首期付款:%g\n", all_num / num * 10 - all_num);printf("总利息:%lf\n\n", sum - all_num);
}
void choose2(double all_num, int num)
{double M_repay, M_rate, sum = 0; char kong;int m, i = 1;//m,还款月数;i,月数printf("贷款年利率:");scanf_s("%lf", &M_rate);printf("总还款月数:");scanf_s("%d", &m); scanf_s("%c", &kong, 4);M_repay = all_num / m;//每月应还本金=贷款本金÷还款月数printf("\n");for (i = 1; i <= m; i++){printf("第%d个月月供额:%lf;\n", i, M_repay + (all_num - ((double)i - 1) * M_repay) * M_rate / 12); //每月月供额 = (贷款本金÷还款月数)+(贷款本金 - 已归还本金累计额)×月利率sum = sum + M_repay + (all_num - ((double)i - 1) * M_repay) * M_rate / 12;}printf("\n");printf("总还款金额:%lf\n", sum);printf("首期付款:%g\n", all_num / num * 10 - all_num);printf("总利息:%lf\n\n", sum - all_num);
}

祝各位早日买房!

C语言实现房贷计算器相关推荐

  1. Windows phone7 软件发布:理财计算器(包括wp7房贷计算器,wp7个税计算器,wp7存款利息计算器)...

    前一段时间,需要经常用到贷款计算器的功能,这样有利于我们做出更好的决策.但是我们只能通过银行的工作人员的计算器来计算,给我带来了极大的不便和损失,由此便萌生了开发一个Windows phone7版的贷 ...

  2. 软件工程-c语言--基于at89c51单片机c语言编写的计算器,基于AT89C1单片机C语言编写的计算器.doc...

    基于AT89C1单片机C语言编写的计算器 #include #define uint unsigned int #define uchar unsigned char sbit dula=P2^6; ...

  3. JavaScript:综合案例---房贷计算器的实现

    房贷计算器的实现 (可以使用的编辑器:webStrom.subLime.notePad++.editPlus) 输入数据: 平方单价 70,000.00 元/平方  B1 租金 382.50 元/平方 ...

  4. 一个简单的房贷计算器设计

    很多人在购买房子时,需要提前去估计各种贷款的利息,以便设计更为合理的贷款方式.本次大作业要求完成一个房贷设计器的设计,具体要求如下: 1.请使用QT或者其他类似的界面库设计人机交互界面,要求界面友好, ...

  5. linux 计算器 c语言,大神教你如何用C语言实现科学计算器

    原标题:大神教你如何用C语言实现科学计算器 用C实现的科学计算器 使用C语言写的科学计算器,可以实现四则运算.三角函数运算.指对数运算:优先级正确:能智能屏蔽空格,能识别输入错误和运算错误,能实现继续 ...

  6. Java实现:房贷计算器 (关键词:公积金、首付、等额本息、等额本金)

    1 背景:房贷计算器 目前现有的网页 房贷计算器,多多少少有点不符合自己需求,因此根据房贷相关公式及 java编写一个贷款计算器现有代码,改写了符合自己要求的 房贷计算器 . 计算结果精度为小数点后2 ...

  7. 【Excel】可浮动利率(LPR)和提前还款的房贷计算器

    1 灵感来源 网上有现成的计算器,为什么还要自己做? 因为网页版的房贷计算器看不到过程,不知其所以然,不知道能不能完全信任. 加上朋友咨询提前还款的问题,又LPR开始执行,从现实和书里汲取了灵感,开始 ...

  8. GO语言基础----简易计算器

    GO语言基础----简易计算器 该计算器可以执行两个数字和一个计算符号的计算. 例如,1+1,3*5,9/2- 代码实现: package mainimport("fmt")fun ...

  9. java 房贷计算器代码_用JAVA编程一个房贷计算器

    求一房贷计算器java源程序 打了个电话给农行的客服(收费的),终于知道公式了..好麻烦的公式...浪费了我15分钟的电话费. 还有在写公式的过程中遇到了计算x的y次方..谁知道java里怎么计算啊? ...

最新文章

  1. Python知识点7——类
  2. c 函数多次声明_【C语言】- static和extern关键字 - 对函数的作用!
  3. kafka grpc_模型服务:流处理与使用Java,gRPC,Apache Kafka,TensorFlow的RPC / REST
  4. 关于质量标准化的思考和实践
  5. flutter的按钮如何变为不可选中_如何在Flutter中禁用按钮?
  6. CentOS 安装VNC
  7. 机器学习-1-.py文件的导入问题
  8. button组件 untiy_Unity自定义Button组件Transition
  9. 181010词霸扇贝有道每日一句
  10. gpx文件解析 Demo
  11. python入门教程百度云资源-python教程大全,全套视频教程学习资料通过百度云网盘下载...
  12. 2018年春季学期《软件工程》教学总结
  13. ATTCK红队评估实战靶场(二)
  14. 安防4G摄像头互联网直播视频流媒体服务器EasyNVR硬件盒子设置固定IP后设备重启无法再次发现设备的问题
  15. 安卓调用系统相机进行拍照
  16. 【机器学习】adaboost算法
  17. ROS下的openni2.launch
  18. 【大数据实验】06:MapReduce操作
  19. iheartradio android,最牛电台iHeartRadio
  20. C语言学习笔记——编写求x的n次方的递归函数,在主函数调用并输出

热门文章

  1. 控制台报错element: <Goods> - did you register the component correctly? For recursive components, make sur
  2. ImportError: cannot import name ‘ModelOutput‘ from ‘smplx.body_models‘
  3. 读张宏杰著《曾国藩传》
  4. POE——POE供电详解
  5. MATLAB多方法车牌识别系统(bp+模板+GUI)
  6. 【opencv450-samples】flann_search_dataset.cpp在数据集中搜索查询图片 说明 FLANN 使用的简单程序
  7. centOS7上用yum安装7zip并解压文件
  8. dBSPL、dBm、dBu、dBV、dBFS
  9. 开发微商城分销系统有什么优势?
  10. Redis配置文件详解