个人财政收入支出(4)

2019-06-11 22:38

if(pHead==0)return 0; CNode *pn=pHead; while(pn) { if(pn->pData->Compare(finance)==0)return pn; pn=pn->pNext;

} return 0;

}

//打印整个链表

void CList::ShowList() { if(!pHead) { cout<<\链表为空\ return;

}

CNode *p=pHead; while(p) { p->ShowNode(); p=p->pNext;

}

}

//删除整个链表

void CList::DeleteList() { if(pHead==0)return; CNode *p,*q; p=pHead; while(p) { delete p->pData; q=p; p=p->pNext; delete q; } pHead=0;

}

//返回链表首结点

CNode *CList::GetListHead()

第 16 页 共 28 页

{ }

//返回链表指定结点的下一个结点

CNode *CList::GetListNextNode(CNode *pnode) { }

//据日期插入结点,并按日期的升序排序

void CList::Insert(CNode *pnode) { }

//返回最后一个结点

CNode *CList::GetLastNode() {

if(!pHead) { }

CNode *p=pHead;

return 0; CNode *p,*q; if(pHead==0) { }

if(pHead->pData->Compare(*(pnode->pData))==1) { } p=pHead;

while(p&&p->pData->Compare(*(pnode->pData))==-1) { }

q->pNext=pnode; pnode->pNext=p;

q=p; p=p->pNext; pnode->pNext=pHead; pHead=pnode; return; pHead=pnode; pHead->pNext=0; return;

return pnode->pNext; return pHead;

第 17 页 共 28 页

}

//逐个结点计算盈余

void CList::CalBalance() { }

//定义处理记录类

class CRecord {

if(!pHead)return; double temp=0; CNode *p=pHead; while(p) { }

p->pData->Calculate(temp); temp=p->pData->GetBalance(); p=p->pNext; while(p->pNext) { } return p;

p=p->pNext;

CList list; //把CList的对象list作为CRecord的成员 void ReadFromFile(); //从文件中读取数据 void SaveToFile(); //把数据保存在文件中 void Deposit(); //输入收入数据 void Withdraw(); //输入支出数据 void ViewDepositRecord(); //查看收入记录 void ViewWithdrawRecord(); //查看支出记录

void ViewBalance(); //查看收支平衡情况 void LookUpRecord(); //根据日期查找记录 void DeleteRecord(); //根据日期删除记录 void setgoal(double); //设定目标

public:

void EditRecord(); //根据日期修改记录

}; //从文件中读取数据 void CRecord::ReadFromFile()

{ ifstream infile1(\将infile1对象与dlPurpose.txt文件相联系,即以后程序对infile1对象的操作均是对该文件的操作

if(!infile1) {

第 18 页 共 28 页

}

//把数据保存在文件中

void CRecord::SaveToFile() { ofstream outfile1(\

if(!outfile1) { }

ofstream outfile(\if(!outfile) { }

int year,month,day; double income,output; char purpose[20];

cout<<\文件写入失败!\exit(1);

cout<<\文件写入失败!\exit(1); }

infile1>>dlPurpose; //将文件dlPurpose.txt中的数据输入到已定义好的ifstream infile(\将infile对象与finance.txt文件相联系,即以后if(!infile) { }

int year,month,day; double income,output; char purpose[20];

while(infile>>year>>month>>day>>income>>output>>purpose) { }

CFinance *pfinance=new CFinance;

pfinance->SetFinance(year,month,day,income,output,purpose); CNode *pnode=new CNode; pnode->InputData(pfinance); list.AddNode(pnode);

cout<<\文件读取失败!\exit(1);

cout<<\文件读取失败!\

exit(1); //终止程序的执行

变量dlPurpose中

程序对infile对象的操作均是对该文件的操作

list.CalBalance();

outfile1<

第 19 页 共 28 页

CNode *p=list.GetListHead(); while(p) { p->GetData()->SetVal(year,month,day,income,output,purpose); //实outfile<

p=list.GetListNextNode(p);

}

}

//输入收入数据

void CRecord::Deposit() { int year,month,day; double income; char purpose[20]; cout<<\请输入日期:\ cin>>year>>month>>day;

while(!IsDateRight(year,month,day)) { cout<<\日期不正确!请重新输入:\ cin>>year>>month>>day; }

cout<<\请输入收入金额:\ cin>>income;

cout<<\请输入收入来源:\ cin>>purpose;

CFinance *pfinance=new CFinance;

pfinance->SetFinance(year,month,day,income,0,purpose); // CNode *pnode=new CNode; pnode->InputData(pfinance); list.Insert(pnode); cout<<\添加成功!\ list.CalBalance();

}

//输入支出数据

void CRecord::Withdraw() { int year,month,day; double output; char purpose[20];

cout<<\请输入日期:\

cin>>year>>month>>day; 第 20 页 共 28 页

对象赋值


个人财政收入支出(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:潮州刘氏文化(正月十九、廿日一梅州见)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: