C程序设计第三章第二题
3.2存款利息的计算。有1000元,想存5年,可按以下5种办法存:
(1)一次存5年期。
(2)先存2年期,到期后将本息再存3年期。
(3)先存3年期,到期后将本息再存2年期。
(4)存1年期,到期后将本息再存1年期,连续存5次。
(5)存活期存款。活期利息每一季度结算一次。
2017年的银行存款利息如下:
1年期定期存款利息为1.5%;
2年期定期存款利息为2.1%;
3年期定期存款利息为2.75%;
5年期定期存款利息为3%;
活期存款利息为0.35%(活期存款每一季度结算一次利息)。
如果r为年利率,n为存款年数,则计算本息和的公式如下:
1年期本息和:P = 1000 *(1 + r);
n年期本息和:P = 1000 * (1 + r);
存n次1年期的本息和:P = 1000 * (1 + r)^ n;
活期存款本息和:P = 1000 * (1 + r/ 4)^ 4n;
说明:1000 * (1 + r/ 4)是一个季度的本息和。
#include<stdio.h>
#include<math.h> /* 要使用POW函数计算次方就得调用数学函数库 */
void main()
{
int RMB,n; //定义钱数和存钱年数
float r1,r2,r3,r5,r; //定义1年,2年,3年和5年的存款利息
float P5,P23,P32,P15,P; //定义一次存五年,先存两年再存三年,先存三年再存两年,存一年存五次和存活期存款的本息和
RMB = 1000;
r1 = 0.015;
r2 = 0.021;
r3 = 0.0275;
r5 = 0.03;
r = 0.0035;
n = 5;
P5 = RMB * (1 + 5 * r5);
printf("一次存5年期的本息和为:%f\n", P5);
P23 = (RMB * (1 + 2 * r2) * (1 + 3 * r3));
printf("先存2年期再存3年期的本息和为:%f\n", P23);
P32 = (RMB * (1 + 3 * r3) * (1 + 2 * r2));
printf("先存2年期再存3年期的本息和为:%f\n", P32);
P15 = (((( (1000 * (1 + r1)) * (1 + r1)) * (1 + r1)) * (1 + r1)) * (1 + r1));
printf("存1年期再存1年期连续5次的本息和为:%f\n", P15);
P = RMB * pow (1 + r / 4, 20);
printf("存活期的本息和为:%f\n", P);
}
作者的编译水平有限,欢迎指出代码中的不足,欢迎改进,谢谢点赞。