程序构造思路:
第一点:创建功能选择菜单,该程序包含的功能函数
第二点:复利函数、单利函数、逆推函数的完成
第三点: 语句的融合与循环工作退出功能的完善
#include<stdio.h> #include<stdlib.h> int year;//year表示复利年限 int Year;//Year表示单利年限 double p;//p表示本金 double P;//P表示单利本金 double i;//i表示年利率 double F;//表示复利后的终值 double Fv;//表示复利后的终值 double S;//期待的终值 int k,n,l; void menu()//功能选择菜单函数 { puts(" "); puts(" |******************************************************|"); puts(" | 利息计算系统 |"); puts(" |******************************************************|"); puts(" | 1: 复利计算 |"); puts(" | 2: 单利计算 |"); puts(" | 3: 逆推计算 |"); puts(" | 0: 退出程序 |"); puts(" |******************************************************|"); printf("请选择<1~3>:"); } void Fuli()//复利计算函数 { printf("请输入复利年限:"); scanf("%d",&year); printf(" 请输入本金:"); scanf("%lf",&p); printf(" 请输入年利率:"); scanf("%lf",&i); for(k=1;k<=year;k++){ F=p*(1+i); p=F; } printf(" 复利后的终值为:"); printf("%.2lf",F); } void Danli()//单利计算函数 { printf("请输入复利年限:"); scanf("%d",&year); printf(" 请输入本金:"); scanf("%lf",&p); printf(" 请输入年利率:"); scanf("%lf",&i); printf(" 单利后的终值为:"); Fv=p*(1+i*year); printf("%.2lf",Fv); } void Nitui()//逆推函数 { double E,D=1; printf("输入期待金额为:"); scanf("%lf",&S); printf(" 请输入存储年限:"); scanf("%d",&Year); printf(" 请输入年利率:"); scanf("%lf",&i); for(l=1;l<=Year;l++) { E=D*(1+i); D=E; } P=S/D; printf(" 应输入的本金为:"); printf("%.2lf",P); } main(){ while(1) { menu();//菜单函数 scanf("%d",&n);//输入选择功能的编号 if(n==0) break; switch(n) { case 1: Fuli();//复利函数 break; case 2: Danli();//单利函数 break; case 3: Nitui();//逆推额函数 break; case 0: n=0;exit(0); } } }