|
请哪位大虾帮忙解决一下。谢谢了,,很急!!!
题目如下:
Visual C++个人财政支出管理
这是具体的要求
课程设计要求
(1)将收支的数据与相应的函数封装到类中,并改写主程序,使程序结构化。
(2)增加保存每笔收支的记录,并对每笔收支记录增加日期录入,按日期的顺序保存、查看记录。将所有记录放如一个文件中,每次运行程序时打开这个文件,程序运行完毕时将更新的记录放回文件中。
(3)完善程序,补充类中数据成员盈余(dlBalance)的计算和输出,要求每笔收入和支出都要重新统计当前情况下的盈余数目。
(4)增加程序监控功能,当输入时间发生错误(如月份超过12等),要求重新输入正确的时间;当结余的数目为负数时,输出信息,警告已经超支!
程序设计思想
1)类的封装
原程序的结构比较简单,只保留了每次更新操作的最后结果,达不到财务帐册要求。若要详细记录下每笔收支的款项、原因的,最好还是采用链表的形式保存数据,且可以根据实际需要动态开辟存储空间,因此推荐使用链表的结构来改写程序。
以下是参考的类的结构:
class CFinance //财务数据类
{
private:
int nYear,nMonth,nDay; //年月日
double dlIncome,dlOutput; //收入、支出数目
double dlBalance; //结余
char szPurpose[20]; //用途、目的
static doubledlPurpose; //目标
double dlGap; //据目标的差额
public:
CFinance(){dlIncome=dlOutput=dlBalance=0.0;}
CFinance(int,int,int); //根据日期生成结点,查找用
int Compare(CFinance &); //比较日期,大于返回1,小于返回-1,等于返回0
void Show(); //输出记录
void SetFinance(int,int,int,double,double,char * ); //对象赋值
void GetPurpose(double purs); //赋值目标
double ShowPur(){return dlPurpose;} //返回目标
void Calculate(double dlBal); //计算结点的赢余情况
double |
|