大学生个人消费管理系统C++代码

  • 格式:doc
  • 大小:42.00 KB
  • 文档页数:5

#include<iostream.h>#include<math.h>#include<string.h>void mainmenu();void run();struct consum //定义一个结构体存储各月消费;{char times[8];//定义时间;double meal; //定义吃饭;double phone; //定义电话费;double book; //定义买书费;double tour; //定义旅游费;double other; //定义其他费用;double work; //定义俭学勤工费;double total;}stu[4]={{"1",-300,-50,-30,-200,-100,100,},{"2",-350,-60,-40,-250,-150,120},{"3",-300,-60,-40,-200,-100,130},{"4",-400,-65,-45,-275,-160,125}};//为结构体变量赋初值;;void main(){int k=1;while(1){mainmenu();run();int t;cout<<"是否继续?是1,否0"<<endl;cin>>t;if(t==0)break;}}void mainmenu(){cout<<"--------欢迎使用大学生消费管理系统主菜单--------"<<endl;cout<<"\t"<<"浏览消费记录,请选择:1"<<endl;cout<<" 录入消费记录,请选择:2"<<endl;cout<<" 查询消费记录,请选择:3"<<endl;cout<<" 删除消费记录,请选择:4"<<endl;cout<<" 排序消费记录,请选择:5"<<endl;cout<<" 统计消费记录,请选择:6"<<endl;cout<<"\t"<<"退出,请选择:0"<<endl;}void run(){int a,k=1; //定义变量a由用户在键盘输入,执行屏幕上的操作序号;cout<<"请输入要执行操作的序号:";cin>>a;if(0<=a&&a<=6)if(a==2){cout<<"请输入要录入的消费信息:包括月份,吃饭费用,电话费用,买书费用,旅游费用,其他费用以及勤工收入,支出为负值,收入为正值:"<<endl;cin>>stu[4+k].times>>stu[4+k].meal>>stu[4+k].phone>>stu[4+k].book>>stu[4+k].tour>>st u[4+k].other>>stu[4+k].work;cout<<"月份"<<'\t'<<"吃饭"<<'\t'<<"电话"<<'\t'<<"买书"<<'\t'<<"旅游"<<'\t'<<"其他"<<'\t'<<"勤工"<<endl;cout<<stu[4+k].times<<'\t'<<stu[4+k].meal<<'\t'<<stu[4+k].phone<<'\t'<<stu[4+k].book<<'\t'<<stu[4+k].tour<<'\t'<<stu[4+k].other<<'\t'<<stu[4+k].work;k++;cout<<endl;}else if(a==4){cout<<"请输入要删除的月份序号,1为一月份,2为二月份,3为三月份,4为四月份:";int m;cin>>m;cout<<"月份"<<'\t'<<"吃饭"<<'\t'<<"电话"<<'\t'<<"买书"<<'\t'<<"旅游"<<'\t'<<"其他"<<'\t'<<"勤工"<<"\t"<<"总支出"<<endl;for(int i=0;i<4;i++)if(i==m-1);elsecout<<stu[i].times<<'\t'<<stu[i].meal<<'\t'<<stu[i].phone<<'\t'<<stu[i].book<<'\t'<<stu[i].tour<<'\t'<<stu[i].other<<'\t'<<stu[i].work<<endl;}elseswitch(a) //使用switch语句,输出符合用户要求的内容;{case 0: break; //退出程序,即什么也不执行;case 1:{cout<<"月份"<<'\t'<<"吃饭"<<'\t'<<"电话"<<'\t'<<"买书"<<'\t'<<"旅游"<<'\t'<<"其他"<<'\t'<<"勤工"<<endl;for(int i=0;i<=2+k;i++)cout<<stu[i].times<<'\t'<<stu[i].meal<<'\t'<<stu[i].phone<<'\t'<<stu[i].book<<'\t'<<stu[i].tour<<'\t'<<stu[i].other<<'\t'<<stu[i].work<<endl;}break; //输出初值;-case 3:cout<<"请输入要查询的月份序号,1为一月份,2为二月份,3为三月份,4为四月份:";int b; //定义变量b,执行要查询月份的序号;cin>>b;switch(b) //使用switch嵌套语句,查询各个月份的消费记录;{case 1:cout<<"月份"<<'\t'<<"吃饭"<<'\t'<<"电话"<<'\t'<<"买书"<<'\t'<<"旅游"<<'\t'<<"其他"<<'\t'<<"勤工"<<endl;cout<<" 1"<<'\t'<<"-300"<<'\t'<<"-50"<<'\t'<<"-30"<<'\t'<<"-200"<<'\t'<<"-100"<<'\t'<<"100"<<endl;break; //查询一月份的消费记录;case 2:cout<<"月份"<<'\t'<<"吃饭"<<'\t'<<"电话"<<'\t'<<"买书"<<'\t'<<"旅游"<<'\t'<<"其他"<<'\t'<<"勤工"<<endl;cout<<" 2"<<'\t'<<"-350"<<'\t'<<"-60"<<'\t'<<"-40"<<'\t'<<"-250"<<'\t'<<"-150"<<'\t'<<"120"<<endl;break; //查询二月份的消费记录;case 3:cout<<"月份"<<'\t'<<"吃饭"<<'\t'<<"电话"<<'\t'<<"买书"<<'\t'<<"旅游"<<'\t'<<"其他"<<'\t'<<"勤工"<<endl;cout<<" 3"<<'\t'<<"-300"<<'\t'<<"-60"<<'\t'<<"-40"<<'\t'<<"-200"<<'\t'<<"-100"<<'\t'<<"130"<<endl;break; //查询三月份的消费记录;case 4:cout<<"月份"<<'\t'<<"吃饭"<<'\t'<<"电话"<<'\t'<<"买书"<<'\t'<<"旅游"<<'\t'<<"其他"<<'\t'<<"勤工"<<endl;cout<<" 4"<<'\t'<<"-400"<<'\t'<<"-65"<<'\t'<<"-45"<<'\t'<<"-275"<<'\t'<<"-160"<<'\t'<<"125"<<endl;break; //查询四月份的消费记录;}break;case 5:{cout<<"总支出排序前的结果是:"<<endl;cout<<"月份"<<'\t'<<"吃饭"<<'\t'<<"电话"<<'\t'<<"买书"<<'\t'<<"旅游"<<'\t'<<"其他"<<'\t'<<"勤工"<<"\t"<<"总支出"<<endl;for(int i=0;i<3+k;i++){stu[i].total=stu[i].meal+stu[i].phone+stu[i].book+stu[i].tour+stu[i].other+stu[i].work;cout<<stu[i].times<<'\t'<<stu[i].meal<<'\t'<<stu[i].phone<<'\t'<<stu[i].book<<'\t'<<stu[i].tour<<'\t'<<stu[i].other<<'\t'<<stu[i].work<<"\t"<<stu[i].total<<endl;}for(i=0;i<2+k;i++)for(int j=0;j<2+k-i;j++)if(fabs(stu[j].total)>fabs(stu[j+1].total)){double t=stu[j].total;stu[j].total=stu[j+1].total;stu[j+1].total=t;}cout<<"总支出排序后的结果是:"<<endl;cout<<"月份"<<'\t'<<"吃饭"<<'\t'<<"电话"<<'\t'<<"买书"<<'\t'<<"旅游"<<'\t'<<"其他"<<'\t'<<"勤工"<<"\t"<<"总支出"<<endl;for(i=0;i<3+k;i++)cout<<stu[i].times<<'\t'<<stu[i].meal<<'\t'<<stu[i].phone<<'\t'<<stu[i].book<<'\t'<<stu[i].tour<<'\t'<<stu[i].other<<'\t'<<stu[i].work<<"\t"<<stu[i].total<<endl;}break;case 6:{ cout<<"请输入要统计消费的名称,1为吃饭费用,2为电话费用,3为买书费用,4为旅游费用,5为其他费用,6为勤工收入:";int c;double sum=0;cin>>c;if(c==1){for(int j=0;j<=2+k;j++)sum+=stu[j].meal;cout<<"sum="<<sum<<endl;}if (c==2){for(int c=0;c<=2+k;c++)sum+=stu[k].phone;cout<<"sum="<<sum<<endl;}if(c==3){for(int k=0;k<=2+k;k++)sum+=stu[k].book;cout<<"sum="<<sum<<endl;}if(c==4){for(int k=0;k<=2+k;k++)sum+=stu[k].tour;cout<<"sum="<<sum<<endl;}if(c==5){for(int k=0;k<=2+k;k++)sum+=stu[k].other;cout<<"sum="<<sum<<endl;}if(c==6){for(int k=0;k<=2+k;k++)sum+=stu[k].work;cout<<"sum="<<sum<<endl;}}break;}}。