C语言编程题,求解题思路!

等额本金和等额本息是当前贷款还款的主要形式,其中等额本金还款是指借款人每月等额偿还本金,贷款利息随本金逐月递减,还款额也逐月递减。等额本金还款计算公式:每月还款金额=(贷... 等额本金和等额本息是当前贷款还款的主要形式,其中等额本金还款是指借款人每月等额偿还本金,贷款利息随本金逐月递减,还款额也逐月递减。
等额本金还款计算公式:
每月还款金额 = (贷款本金 / 还款月数) + (本金 - 已归还本金累计额) × 每月利率。
现给定某客户的贷款本金(P,单位为元)、贷款期数(N,单位为月)和每月利率(R),请计算该客户每个月的还款金额(精确到小数点后两位,四舍五入)。

【例子】
输入:(自测输入格式:1000000;7;0.003959)
P = 1,000,000
N = 7
R = 0.003959
输出:[146816.14, 146250.57, 145685.0, 145119.43, 144553.86, 143988.29, 143422.71]
展开
 我来答
紫薇参星
科技发烧友

2020-07-06 · 有一些普通的科技小锦囊
知道大有可为答主
回答量:5983
采纳率:92%
帮助的人:3588万
展开全部

只要按照公式计算每月还款金额就可以了,其中"已归还本金累计额"等于"贷款本金 除以 还款月数 乘以 已还款月数".

按照题目要求编写的等额本金还款的C语言程序如下

#include<stdio.h>

int main(){

 double P,R,repayment;

 int N,i;

 scanf("%lf;%d;%lf",&P,&N,&R);

 printf("[");

 for(i=0;i<N;i++){

  repayment=(P/N)+(P-P/N*i)*R;

  if(i==N-1)

   printf("%.2lf]",repayment);

  else

   printf("%.2lf,",repayment);

 }

 return 0;

}

追问
谢谢!大神厉害啊,连中括号都分这么细!
chinazjf2000
2020-07-07
知道答主
回答量:13
采纳率:100%
帮助的人:2.8万
展开全部
#include <stdlib.h>
#include <stdio.h>
int main()
{
int P, N;
double R;
printf("input data: ");
scanf("%d;%d;%lf", &P, &N, &R);
printf("P = %d\n", P);
printf("N = %d\n", N);
printf("R = %0.6f\n", R);

double avg = (double)P / N;
double ret = 0;

printf("[");

for (size_t i = 0; i < N; ++i)
{
double money = avg + (P - ret) * R;
ret += avg;

printf("%.2f", money);
if (i < N - 1)
printf(", ");
}
printf("]\n");

return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式