基本信息
源码名称:c++ 家庭财务管理系统源码(入门级)
源码大小:9.65KB
文件格式:.cpp
开发语言:C/C++
更新时间:2019-06-03
友情提示:(无需注册或充值,赞助后即可获取资源下载链接)
嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300
本次赞助数额为: 2 元×
微信扫码支付:2 元
×
请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
源码介绍
#include <iostream> #include <string> #include <windows.h> using namespace std; int fa_i=0; int bi_i=0; class Family {//家庭成员 public: int number;//编号 string name;//姓名 } fa[50]; class Bill :public Family { //账单 public: int num;//账单编号 string call;//账单名称 string type;//账单类型 double money;//账单金额 int year;//年 int month;//月 } bi[50]; void Meau() { system("cls"); cout<<"******家庭财务管理系统******"<<endl; cout<<" 1.添加信息"<<endl; cout<<" 2.显示信息"<<endl; cout<<" 3.修改信息"<<endl; cout<<" 4.删除信息"<<endl; cout<<" 5.查找信息"<<endl; cout<<" 6.账单计算"<<endl; cout<<" 7.退出系统"<<endl; cout<<"****************************"<<endl; } void input1() {//添加家庭成员 char ch; do{ cout<<"请输入:(回车键结束输入)\n"; cout<<"输入成员编号:";cin>>fa[fa_i].number; cout<<"输入成员姓名:";cin>>fa[fa_i].name; fa_i ; cout<<"继续添加请输入Y|y:"<<endl; cin>>ch; }while(ch == 'Y' || ch == 'y'); } void input2() {//添加账单信息 char ch; do{ cout<<"请输入:(回车键结束输入)\n"; cout<<"输入成员姓名:";cin>>bi[bi_i].name; cout<<"输入账单编号:";cin>>bi[bi_i].num; cout<<"输入账单名称:";cin>>bi[bi_i].call; cout<<"输入账单类型:";cin>>bi[bi_i].type; cout<<"输入账单金额:";cin>>bi[bi_i].money; cout<<"输入消费时间:(年)";cin>>bi[bi_i].year; cout<<"输入消费时间:(月)";cin>>bi[bi_i].month; bi_i ; cout<<"继续添加请输入Y|y:"<<endl; cin>>ch; }while(ch == 'Y' || ch == 'y'); } void input() {//添加信息 system("cls"); cout<<" 1.添加家庭成员"<<endl; cout<<" 2.添加账单信息"<<endl; int i; cin>>i; switch(i) { case 1:input1();break; case 2:input2();break; default: MessageBox(NULL,TEXT("输入有误,请重新输入"),TEXT("警告"),MB_OK); } } void print1() {//显示所以成员 int i=0; while(i<fa_i) { cout<<"成员编号\t成员姓名"<<endl; cout<<fa[i].number<<" "<<fa[i].name<<endl; i ; } system("pause"); } void print2() {//显示所有账单 int i=0; while(i<bi_i) { cout<<"成员姓名\t账单编号\t账单名称\t账单类型\t账单金额\t账单消费日期"<<endl; cout<<bi[i].name<<'\t'<<bi[i].num<<'\t'<<bi[i].call<<'\t'<<bi[i].type<<'\t'<<bi[i].money<<'\t'; cout<<bi[i].year<<"年"<<bi[i].month<<"月"<<endl; i ; } system("pause"); } void print() {//显示信息 system("cls"); cout<<" 1.显示所以成员"<<endl; cout<<" 2.显示所有账单"<<endl; int i; cin>>i; switch(i) { case 1:print1();break; case 2:print2();break; default: MessageBox(NULL,TEXT("输入有误,请重新输入"),TEXT("警告"),MB_OK); } } void change1() {//修改成员信息 int a,i=0,flag=0; string b; cout<<"输入成员编号、姓名"<<endl; cin>>a>>b; while(i<fa_i){ if(a==fa[i].number && b==fa[i].name){ cout<<"1.修改成员编号"<<endl; cout<<"2.修改成员姓名"<<endl; int j; cin>>j; if(j==2){ cout<<"请输入成员新姓名"<<endl; cin>>fa[i].name; flag=1; } if(j==1){ cout<<"请输入成员新编号"<<endl; cin>>fa[i].number; flag=1; } break; } i ; } if(flag==1) cout<<"修改成功!"<<endl; else MessageBox(NULL,TEXT("输入有误,请重新输入"),TEXT("警告"),MB_OK); system("pause"); } void change2() {//修改账单信息 int i,j,flag,a; string b; cout<<"输入账单编号、名称"<<endl; cin>>a>>b; while(i<bi_i){ if(a==bi[i].num && b==bi[i].call){ cout<<"1.修改账单编号\n2.修改账单名称\n3.修改账单类型\n4.修改账单金额\n5.修改账单消费日期"<<endl; cin>>j; if(j==1){ cout<<"请输入成员新编号"<<endl; cin>>bi[i].num; flag=1; } if(j==2){ cout<<"请输入成员新名称"<<endl; cin>>bi[i].call; flag=1; } if(j==3){ cout<<"请输入成员新类型"<<endl; cin>>bi[i].type; flag=1; } if(j==4){ cout<<"请输入成员新金额"<<endl; cin>>bi[i].money; flag=1; } if(j==5){ cout<<"请输入成员新日期(年、月)"<<endl; cin>>bi[i].year>>bi[i].month; flag=1; } break; } i ; } if(flag==1) cout<<"修改成功!"<<endl; else MessageBox(NULL,TEXT("输入有误,请重新输入"),TEXT("警告"),MB_OK); system("pause"); } void change() {//修改信息 system("cls"); cout<<" 1.修改成员信息"<<endl; cout<<" 2.修改账单信息"<<endl; int i; cin>>i; switch(i) { case 1:change1();break; case 2:change2();break; default: MessageBox(NULL,TEXT("输入有误,请重新输入"),TEXT("警告"),MB_OK); } } void deleted1() {//删除成员信息 int a,k=0,flag=0,i,j; string b; cout<<"输入成员编号、姓名"<<endl; cin>>a>>b; while(k<fa_i){ if(a==fa[k].number && b==fa[k].name){ for(i=k;i<fa_i;i ){ fa[i] = fa[i 1]; } flag = 1; fa_i--; break; } k ; } if(flag==1) cout<<"删除成功!"<<endl; else MessageBox(NULL,TEXT("输入有误,请重新输入"),TEXT("警告"),MB_OK); system("pause"); } void deleted2() {//删除账单信息 int a,k=0,flag=0,i,j; string b; cout<<"输入账单编号、名称"<<endl; cin>>a>>b; while(k<bi_i){ if(a==bi[k].num && b==bi[k].call){ for(i=k;i<bi_i;i ){ bi[i] = bi[i 1]; } flag = 1; bi_i--; break; } k ; } if(flag==1) cout<<"删除成功!"<<endl; else MessageBox(NULL,TEXT("输入有误,请重新输入"),TEXT("警告"),MB_OK); system("pause"); } void deleted() {//删除信息 system("cls"); cout<<" 1.删除成员信息"<<endl; cout<<" 2.删除账单信息"<<endl; int i; cin>>i; switch(i) { case 1:deleted1();break; case 2:deleted2();break; default: MessageBox(NULL,TEXT("输入有误,请重新输入"),TEXT("警告"),MB_OK); } } void find1(int i) {//成员查询 string b; int a,j=0; if(i==1){ cout<<"请输入成员姓名:"; cin>>b; while(j<fa_i){ if(b == fa[j].name){ cout<<"成员编号\t成员姓名"<<endl; cout<<fa[j].number<<" "<<fa[j].name<<endl; } j ; } } if(i==2){ cout<<"请输入成员编号:"; cin>>a; while(j<fa_i){ if(a == fa[j].number){ cout<<"成员编号\t成员姓名"<<endl; cout<<fa[j].number<<" "<<fa[j].name<<endl; } j ; } } system("pause"); } void find2(int i) {//账单查询 string b; double max_a,min_a; int j=0; if(i==1){ cout<<"账单类型"; cin>>b; while(j < bi_i){ if(b == bi[j].type){ cout<<"成员姓名\t账单编号\t账单名称\t账单类型\t账单金额\t账单消费日期"<<endl; cout<<bi[j].name<<'\t'<<bi[j].num<<'\t'<<bi[j].call<<'\t'<<bi[j].type<<'\t'<<bi[j].money<<'\t'; cout<<bi[j].year<<"年"<<bi[j].month<<"月"<<endl; } j ; } } if(i==2){ cout<<"账单名称"; cin>>b; while(j < bi_i){ if(b == bi[j].call){ cout<<"成员姓名\t账单编号\t账单名称\t账单类型\t账单金额\t账单消费日期"<<endl; cout<<bi[j].name<<'\t'<<bi[j].num<<'\t'<<bi[j].call<<'\t'<<bi[j].type<<'\t'<<bi[j].money<<'\t'; cout<<bi[j].year<<"年"<<bi[j].month<<"月"<<endl; } j ; } } if(i==3){ cout<<"账单使用者"; cin>>b; while(j < bi_i){ if(b == bi[j].name){ cout<<"成员姓名\t账单编号\t账单名称\t账单类型\t账单金额\t账单消费日期"<<endl; cout<<bi[j].name<<'\t'<<bi[j].num<<'\t'<<bi[j].call<<'\t'<<bi[j].type<<'\t'<<bi[j].money<<'\t'; cout<<bi[j].year<<"年"<<bi[j].month<<"月"<<endl; } j ; } } if(i==4){ cout<<"账单金额范围(最大值,最小值)"; cin>>max_a>>min_a; while(j < bi_i){ if(bi[j].money<=max_a && bi[j].money>=min_a){ cout<<"成员姓名\t账单编号\t账单名称\t账单类型\t账单金额\t账单消费日期"<<endl; cout<<bi[j].name<<'\t'<<bi[j].num<<'\t'<<bi[j].call<<'\t'<<bi[j].type<<'\t'<<bi[j].money<<'\t'; cout<<bi[j].year<<"年"<<bi[j].month<<"月"<<endl; } j ; } } system("pause"); } void find() {//查询信息 system("cls"); cout<<" 1.成员查找-姓名"<<endl; cout<<" 2.成员查找-编号"<<endl; cout<<" 3.账单查找-账单类型"<<endl; cout<<" 4.账单查找-账单名称"<<endl; cout<<" 5.账单查找-账单使用者"<<endl; cout<<" 6.账单查找-账单金额范围查找"<<endl; int i; cin>>i; switch(i) { case 1:find1(1);break; case 2:find1(2);break; case 3:find2(1);break; case 4:find2(2);break; case 5:find2(3);break; case 6:find2(4);break; default: MessageBox(NULL,TEXT("输入有误,请重新输入"),TEXT("警告"),MB_OK); } } void count1() {//按月统计 int a; int i=0; double sum=0; cout<<"请输入统计月份: ";cin>>a; while(i<bi_i){ if(a == bi[i].month){ sum = bi[i].money; } i ; } cout<<a<<"月消费总额:"<<sum<<"元"<<endl; system("pause"); } void count2() { int a; int i=0; double sum=0; cout<<"请输入统计年份: ";cin>>a; while(i<bi_i){ if(a == bi[i].year){ sum = bi[i].money; } i ; } cout<<a<<"年消费总额:"<<sum<<"元"<<endl; system("pause"); } void count(){//账单计算 system("cls"); cout<<" 1.按月统计"<<endl; cout<<" 2.按年统计"<<endl; int i; cin>>i; switch(i) { case 1:count1();break; case 2:count2();break; default: MessageBox(NULL,TEXT("输入有误,请重新输入"),TEXT("警告"),MB_OK); } } void Choose() { int i; while(1) { Meau(); cin>>i; switch(i) { case 1:input();break; case 2:print();break; case 3:change();break; case 4:deleted();break; case 5:find();break; case 6:count();break; case 7:exit(0);break; default: MessageBox(NULL,TEXT("输入有误,请重新输入"),TEXT("警告"),MB_OK); } } } void Welcome()//欢迎界面 { system("color 5F"); system("mode con cols=100 lines=40"); cout<<"\n\n\n\n ******************************************************\n"; cout<<"\n\n Welcome To Use !\n\n\n"; cout<<" ******************************************************\n"; system("pause"); } void ReWindow()//窗口初始化 { system("color 8F");//设置控制台界面背景颜色和前景颜色 system("mode con cols=100 lines=40");//初始化缓冲区大小 SetConsoleTitle("家庭财务管理系统");//设置控制台窗口标题 } int main() { Welcome(); ReWindow(); Choose(); return 0; }