❶ c语言 银行贷款的月利率 简单代码
#include<stdio.h>
#include<math.h>
main()
{
doublemoney,capital;
doublerate[4]={0.009,0.01,0.0111,0.012};
intn;
printf("请输入本金和期限(年) ");
scanf("%lf%d",&capital,&n);
if(n>3)
money=capital*pow((1+rate[3]),12*n);
else
money=capital*pow((1+rate[n-1]),12*n);
printf("%d年后本金和利息合计为:%.2lf ",n,money);
}
❷ c语言这个问题 能帮帮忙嘛 谢谢
//希望我的回答对你的学习有帮助
#include<stdio.h>
#include<math.h>
intmain()
{
doublemoney,capital;
doublerate[4]={0.009,0.01,0.0111,0.012};
intn,m;
scanf("%lf%d",&capital,&n);
m=n/12;
if(n!=12*m){
m++;
}
if(m>3)
money=capital*pow((1+rate[3]),12*m);
else
money=capital*pow((1+rate[m-1]),12*m);
printf("%.2lf ",money);
return0;
}
❸ 关于C语言中“分期付款计算”的问题
今天的1元钱,在k个月以后就变成(1+R)^k元钱了,这是一个未来价值或期值/现值的概念。套用到这里来,就是说,把所有还掉的钱的价值统一到同一个时间点上,它们的总和,与贷款在这个时间点的价值是相同的。根据这个关系来列关系式:
考虑第0个月贷款D元,从第一个月起,每个月还款P元,第M个月还清,则有贷款在第M个月的价值为:D(1+R)^M,第n个月还款在第M个月的价值为:P(1+R)^(M-n),特别的,第M月的还款在第M个月的价值就是它的现值P元
所以有等式:P(1+R)^(M-1)+P(1+R)^(M-2)+……+P(1+R)^2+P(1+R)+P=D(1+R)^M
利用等比数列求和公式:
P*((1+R)^M-1)/R=D(1+R)^M
化简得:P/(P-DR)=(1+R)^M
两边取(1+R)的对数得:log_(1+R)(P/(P-DR))=M
化简:M=log(P/(P-DR))/log(1+R)=(logP-log(P-DR))/1og(1+R)
(这里的log可以是自然对数或科学对数)
你给的公式好像少了一对括号
❹ C语言计算贷款还款额怎么做
#include<stdio.h>
#include<math.h>
intmain(){
inttotal,year;
doublerate_year;
scanf("%d%d",&total,&year);
if(year<=1)
rate_year=0.03;
elseif(year<=5)
rate_year=0.04;
elseif(year<=10)
rate_year=0.05;
else
rate_year=0.06;
doublerate=rate_year/12;
printf("%lf ",total*pow(rate+1,year*12)*rate/(pow(rate+1,year*12)-1));
return0;
}
❺ C++ C语言程序设计 题目:贷款计算器
/*
* main.c
*
* Created on: 2011-6-8
* Author: icelights
*/
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <math.h>
#define APR1 0.0747 /*<1年(含1年)年利率*/
#define APR2 0.0756 /*1-3年(含3年)年利率*/
#define APR3 0.0774 /*3-5年(含5年)年利率*/
#define APR4 0.0783 /*5年以上年利率*/
#define A_TO_M 1/12 /*月利率 = 年利率 / 12*/
#define RTP 12 /*Reimbursement total periods还款总期数 =年限*12*/
#define LENGTH 80
struct LoanInfo
{
/*姓名*/
char name[LENGTH];
/*贷款总额*/
double LoanAmount;
/*贷款年限*/
double LoanYear;
/*月付*/
double MonthlyPayment;
/*总利息*/
double TotalInterest;
/*还款总额*/
double ReimbursementAmount;
/*年利率*/
double apr;
struct LoanInfo * next;
};
void CalcShow(struct LoanInfo * cur, struct LoanInfo * hd,
struct LoanInfo * prv);
int main(void)
{
int temp;
struct LoanInfo * head = NULL;
struct LoanInfo * prev, * current;
current = (struct LoanInfo *)malloc(sizeof(struct LoanInfo));
if (NULL == head)
{
head = current;
}
else
{
prev->next = current;
}/*End of if (NULL == head)*/
puts("请输入姓名");
gets(current->name);
fflush(stdin);
puts("请输入贷款数额(单位:万元)");
scanf("%lf", ¤t->LoanAmount);
fflush(stdin);
puts("请输入贷款年限");
scanf("%lf", ¤t->LoanYear);
fflush(stdin);
printf("姓名:%s,贷款年限:%lf, 贷款数额%lf",
current->name, current->LoanYear, current->LoanAmount);
prev = current;
puts("请确认Y/N");
temp = getchar();
switch(toupper(temp))
{
case 'Y' : CalcShow(current, head, prev);
break;
case 'N' : free(current);
main();
break;
default : puts("输入错误");
free(current);
break;
}
return 0;
}
void CalcShow(struct LoanInfo * cur, struct LoanInfo * hd,
struct LoanInfo * prv)
{
char lcv_temp;
if (cur->LoanYear <= 1)
cur->apr = APR1;
else if (cur->LoanYear <= 3)
cur->apr = APR2;
else if (cur->LoanYear <= 5)
cur->apr = APR3;
else
cur->apr = APR4;
/*End of if (year <= 1)*/
cur->LoanAmount = 10000 * cur->LoanAmount;
cur->ReimbursementAmount = cur->LoanAmount * pow((1 + cur->apr), cur->LoanYear);
cur->MonthlyPayment = cur->ReimbursementAmount / (cur->LoanYear * RTP);
cur->TotalInterest = cur->ReimbursementAmount - cur->LoanAmount;
printf("姓名:%s 贷款年限:%.0lf\n"
"贷款数额:%.2lf 每月还款额:%.2lf\n"
"利息合计:%.2lf 还款总额:%.2lf\n",
cur->name, cur->LoanYear, cur->LoanAmount,
cur->MonthlyPayment, cur->TotalInterest, cur->ReimbursementAmount);
puts("是否继续计算Y/N");
lcv_temp = getchar();
switch(toupper(lcv_temp))
{
case 'Y' : free(cur);
main();
break;
case 'N' : free(cur);
exit(0);
default : puts("输入错误");
free(cur);
main();
break;
}
system("pause");
}
❻ C语言问题
本金加利息=本金*(1+月利率)^月数
在c里有一个乘方函数pow()
pow(a,b) 等于a的b次方
#include<stdio.h>
#include<math.h>
main()
{
doublemoney,capital;
doublerate[4]={0.009,0.01,0.0111,0.012};
intn;
printf("请输入本金和期限(年) ");
scanf("%lf%d",&capital,&n);
if(n>3)
money=capital*pow((1+rate[3]),12*n);
else
money=capital*pow((1+rate[n-1]),12*n);
printf("%d年后本金和利息合计为:%.2lf ",n,money);
}
❼ c语言 银行贷款问题(急求)
lz ,这个问题其实是个数学公式,编程求解的话,也就是起到一个计算器的作用(如果不具备公式的话,那就只能通过枚举来一个个尝试了,那就失去针对性了)
刚我算了一下,思路:
1. 年利率为i ,则第一年的利息是 s * i ,第二年是 (s - 12x) * i ,其中x是每月还款额,第三年 (s - 24x) * i ... ... ,第n年的利息是 [ s - 12(n-1)x ] * i ,该等差数列之和为 [s - 6(n-1)x ] * n * i ,这就是n年所产生的总利息了。
2.通过等式 :
(总利息 + 本金)/ 年数 / 12 = 每月还款额
{ [s - 6(n-1)x ] * n * i + s } / 12n = x
解得x = ( nis + s ) / [ 12n + 6(n-1) ni ]
假设房贷 300000 按揭10年 ,利率5% ,每月还3061 ,差不多
❽ C语言编程 从银行贷款d,每月还款额为p,月利率为r,算多少月能还清。设d为300000,p为6000,r为1%.
#include <stdio.h>
#include <math.h>
int main()
{float d=300000,p=6000,r=0.01,m;
m=log10(p/(p-d*r))/log10(1+r);
printf("m=%6.2f\n",m);
return 0;
}
望采纳,谢谢
❾ 有关银行贷款还贷的c语言程序
这个没有必要。各家国有银行的网银和网站上都有现实利率的贷款计算器。利率随时更新。很方便的。
❿ 跪求C语言编程 从银行贷款d,每月还款额为p,月利率为r,算多少月能还清。设d为3000000,p为6000,r为1%
log10(a)/log10(b)=loga(b)
直接用c语言的库函数输出的时候用%.2f就可以了吧