问题库

c语言问题,与“银行整存整取存款不同期限的月息利率”有关,高手进20

稷益士
2021/5/3 17:15:15
已知银行整存整取存款不同期限的月息利率分别为:
$\text{年利息率}=\begin{cases}
2.25\% & \text{期限1年} \\
2.43\% & \text{期限2年} \\
2.70\% & \text{期限3年} \\
2.88\% & \text{期限5年} \\
3.00\% & \text{期限8年}
\end{cases}
$
要求输入存钱的期限和本金,求到期时能从银行得到的利息与本金的合计。
**输入格式要求:"%d,%lf" 提示信息:"Please enter year,capital:"
**输出格式要求:"rate = %f, deposit = %f\n",输入错误时显示"Error rate!\n"
最佳答案:

我恰巧写了个类似的程序,发上来给你参考下吧。

这么简单的程序还是自己写吧,偷懒无益。

#include <stdio.h>

#define OneYear 0.0063

#define TwoYear 0.0066

#define ThreeYear 0.0069

#define FiveYear 0.0075

#define EightYear 0.0084

double GetMaxMoney(const double corpus, const int year)

{

int spareYear = year;

double money = corpus;

double accrual;

while (spareYear > 0) {

if (spareYear / 8 > 0) {

spareYear -= 8;

accrual = money*EightYear*12*8;

money += accrual;

continue;

}

if (spareYear / 5 > 0) {

spareYear -= 5;

accrual = money*FiveYear*12*5;

money += accrual;

continue;

}

if (spareYear / 3 > 0) {

spareYear -= 3;

accrual = money*ThreeYear*12*3;

money += accrual;

continue;

}

if (spareYear / 2 > 0) {

spareYear -= 2;

accrual = money*TwoYear*12*3;

money += accrual;

continue;

}

if (spareYear / 1 > 0) {

spareYear -= 1;

accrual = money*OneYear*12*1;

money += accrual;

continue;

}

}

return money;

}

int main(void)

{

double corpus = 2000;

int year = 20;

double money = GetMaxMoney(corpus, year);

printf("%.02f\n", money);

getchar();

}

长安说书人

2021/5/16 20:43:17

我来回答

匿名 提交回答
其他回答(1个)

1个回答

  • 亨毅大帝

    2021/5/11 15:24:25

    有钱烧地没事干,

    精神空虚瞎晃荡,

    亲狗胜过爹和娘,

    貌似自己高大上。

    社区物业也软蛋,

    怒视就是不敢管,

    脱绳遛狗危害大,

    老人孩子都害怕。

相关问题