复利计算程序说明

运行程序,选择所需要的功能。 1.复利计算 2.单利计算 3.本金计算 4.退出程序

  1 #include <stdio.h>
  2 #include <stdlib.h>
  3 #include <math.h>
  4 
  5 class lixi
  6 {
  7 private:
  8     double p;  // 本金
  9     double i;    // 利率
 10     int n;    // 利率获取时间的整数倍
 11     double f;    // 复利终值
 12     double d;    // 单利终值
 13 public:
 14     void input();
 15     void calculate_fuli();
 16     void calculate_danli();
 17     void calculate_benjin();
 18 };
 19 
 20 void lixi::input()
 21 {
 22     printf("
请输入本金:");
 23     scanf("%lf", &p);
 24     printf("请输入年利率:");
 25     scanf("%lf", &i);
 26     printf("请输入利率获取时间(年):");
 27     scanf("%d", &n);
 28 }
 29 
 30 void lixi::calculate_fuli()
 31 {
 32 //    printf("%f %f %d
", p, i, n);
 33     f = p * pow(1+i, n);
 34 
 35     printf("
%d年后本息和为:%0.2f.
", n, f);
 36 
 37     return;
 38 }
 39 
 40 void lixi::calculate_danli()
 41 {
 42     d = p * i * n;
 43     f = p + d;
 44 
 45     printf("
本金%0.2f 经过%d年后单利计算利息为:%0.2f.
", p, n, d);
 46     printf("本息和为:%0.2f
", f);
 47 
 48     return;
 49 }
 50 
 51 void lixi::calculate_benjin()
 52 {
 53      printf("请输入总金额:");
 54      scanf("%lf", &f);
 55      printf("请输入年利率:");
 56      scanf("%lf", &i);
 57      printf("请输入利率获取时间(年):");
 58      scanf("%d", &n);
 59 
 60      d = f / (1 + i * n);
 61      p = f / pow(1 + i, n);
 62 
 63      printf("
经计算,单利所需本金为:%0.2f.
复利所需本金为:%0.2f.
", d, p);
 64 }
 65 
 66 int main(void)
 67 {
 68     lixi user;
 69     int key = 0;
 70 
 71     printf("    |---------------------------------------------|
");
 72     printf("    |---------    1. 复利计算     ----------------|
");
 73     printf("    |---------    2. 单利计算     ----------------|
");
 74     printf("    |---------    3. 本金计算     ----------------|
");
 75     printf("    |---------    4. 退出程序     ----------------|
");
 76     printf("    |---------------------------------------------|
");
 77 
 78     
 79     printf("    
选择所需要的功能:");
 80     while(scanf("%d", &key) == 1)
 81     {
 82         switch(key)
 83         {
 84         case 1:
 85             user.input();
 86             user.calculate_fuli();
 87             break;
 88         case 2:
 89             user.input();
 90             user.calculate_danli();
 91             break;
 92         case 3:
 93             user.calculate_benjin();
 94         case 4:
 95             exit(0);
 96             break;
 97         }
 98         printf("    
选择所需要的功能:");
 99     }
100 
101     return 0;
102 }

选择相应的功能,根据提示输入相关的数据(本金, 利率, 年限),便可以计算出相应的结果

原文地址:https://www.cnblogs.com/shuaibi/p/5273026.html