标题:求高手指点
只看楼主
小强。小强
Rank: 2
来 自:山西大同
等 级:论坛游民
帖 子:42
专家分:56
注 册:2012-11-15
结帖率:100%
 问题点数:0 回复次数:2 
求高手指点
float calculateMonthlypayment(float* IM,float* PP, float* NB)
{
     
    float rateM;
    float MP,PR;
    *IM=PR*rateM;                //月利息=本金*月利息
    *PP=MP-IM ;                    //月还本金=月还总额-月利息
    *NB=PR-PP;                    //新本金=本金-月还本金
    return 0;
}

以上是错误的地方,我不知道咋改,
以下是原函数



#include<stdio.h>

#include<math.h>

float printInformation(float PR,float rateY,float MP);
float calculateMonthlypayment(float*IM,float* PP, float* NB);
float printAmortizationTable(float NB,float PR,float IM,float PP);
int main()
{
    float PR,MP,IM,NB,PP,rateY;                    //PR是本金,MP是每月要还的钱,IM是每月要还的利息,PP是要还的本金,rateY是年利率;
    printInformation( PR,rateY,MP);
    calculateMonthlypayment(&IM,&PP,&NB);
    printAmortizationTable(NB,PR,IM, PP);
    return 0;
}
float printInformation(float PR,float rateY,float MP)
{
    int Y,M;                                    //Y;年。M;月;
    float rateM;                                //rateM是月利率;
    printf("the amont of the loan(principal);  ");
    scanf("%f",&PR);
    printf("interest rate/year (percent);  ");
    scanf("%f",&rateY);
    printf("interest rate/month (decimal);  ");
    scanf("%lf",&rateM);
    printf("number of years; ");
    scanf("%d",&Y);
    printf("number of month;  ");
    scanf("%d",&M);
    printf("monthly payment; ");
    scanf("%f", &MP);
    return 0;
}


float calculateMonthlypayment(float* IM,float* PP, float* NB)
{
     
    float rateM;
    float MP,PR;
    *IM=PR*rateM;                //月利息=本金*月利息
    *PP=MP-IM ;                    //月还本金=月还总额-月利息
    *NB=PR-PP;                    //新本金=本金-月还本金
    return 0;
}


float printAmoitizationTable(float PR,float PP,float NB)
{
    int M;
    float IM,MP;
    float sum=0.00;
    printf("            old            month        Interest        principal        new\n");
    printf("month\n");
    printf("            Balanxe        payment          paid              paid            balance\n");
    for(M=1;M<=12;M++)
    {
        printf("%d   %f   %f    %f   %f   %f ",M,PR,MP,IM,PP,NB);
        PR=NB;
        sum=sum+PP;
    }

     printf("total amount paid; %f",&sum);
}

搜索更多相关主题的帖子: 利息 include return 原函数 
2012-11-22 21:08
矿大李威
Rank: 1
等 级:新手上路
帖 子:3
专家分:1
注 册:2012-11-22
得分:0 
float calculateMonthlypayment(float* IM,float* PP, float* NB)
{
     
    float rateM;
    float MP,PR;    //MP、PR、rateM需要赋值
    *IM=PR*rateM;                //月利息=本金*月利息
    *PP=MP-*IM ;                    //月还本金=月还总额-月利息
    *NB=PR-*PP;                    //新本金=本金-月还本金
    return 0;
}
2012-11-22 22:26
小强。小强
Rank: 2
来 自:山西大同
等 级:论坛游民
帖 子:42
专家分:56
注 册:2012-11-15
得分:0 
回复 2楼 矿大李威
那个我不是在调用printinformation时要赋值的吗
2012-11-22 22:46



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-387989-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019800 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved