大学生个人消费管理系统.docx
- 文档编号:5910822
- 上传时间:2023-01-02
- 格式:DOCX
- 页数:13
- 大小:128.78KB
大学生个人消费管理系统.docx
《大学生个人消费管理系统.docx》由会员分享,可在线阅读,更多相关《大学生个人消费管理系统.docx(13页珍藏版)》请在冰豆网上搜索。
大学生个人消费管理系统
河北工业大学计算机软件技术基础(VC)2012年课程设计报告
学院信息工程学院班级姓名学号成绩____
一、题目:
大学生个人消费管理系统(18)
二、设计思路
1、总体设计
1)分析程序的功能:
该程序主要是对大学生消费信息进行管理与统计,主要实现对大学生每月的各项花费进行管理,包括消费记录的录入、修改、查询、删除、排序、统计和浏览的功能。
2)系统总体结构:
系统分为8个部分,分别为主菜单,录入消费记录程序,修改消费记录程序,查询消费记录程序,删除消费记录程序,排序消费记录程序,统计消费记录程序,浏览消费记录程序。
模块
函数名称
主菜单
main
录入信息
input
修改信息
xiugai
查询信息
search
删除信息
shanchu
统计信息
tongji
排序信息
paixu
浏览信息
output
通过主菜单中的提示来选择服务项目,并通过输入的数字转到用户想要运行的系统,调用该系统所使用的函数,实现对消费信息的管理。
在录入信息时,通过界面的提示按照月份,吃饭消费,电话消费,买书消费,旅游消费,其他消费,勤工收入来输入数据,系统通过录入程序对所输入的信息进行保存。
信息录入完毕后,在选择其他选项就可以对数据进行加工与处理。
2、各功能模块的设计:
1)主菜单模块
该模块是整个系统的主界面,用户通过主界面对系统中的程序进行选择,该界面主要运用do…while函数实现主界面的输出,另外使用switch语句实现对各个程序的选择,调用各个程序所使用的函数,通过对输入数字的判断来调用各个次函数和所要程序的界面。
代码参见主函数
2)录入信息模块
该模块是对大学生信息的录入,用户通过界面提示依次输入相关信息实现对信息的储存,该模块主要使用结构数组存储大学生消费记录,并使用for语句实现对大量信息的逐次录入与储存。
代码参见录入函数
3)浏览信息模块
该模块实现对储存的信息的浏览,主要使用for语句实现对信息的输出。
代码参见浏览函数
4)排序信息模块
该模块实现对已有数据的排序,该部分主要使用冒泡法排序,对每个月的支出总和进行排序,最后再调用浏览函数实现对排完序的数据的输出。
代码参见排序函数
5)查询信息模块
该模块实现对已存数据的查询功能,通过使用for语句实现对所需信息的查找,再通过if函数判断是否存在所需要的信息,并将查到的信息按照顺序打印出来。
代码参见查询函数
6)修改信息模块
该模块主要使用for语句和if函数判断是否存在所改月份的信息,并通过if函数进行对函数的修改于覆盖,当所找月份信息不存在时,该模块也会提醒用户信息不存在。
代码参见修改函数
7)删除信息模块
该模块实现的是对已储存信息的删除,使用for语句和if函数判断是否存在,并通过if函数和while语句实现对信息的删除与覆盖。
代码参见删除函数
8)统计信息模块
该模块实现的是对已存信息的各项消费统计,使用for语句和累加功能实现对每项消费的累加,累加结束后通过cout输出最后统计结果。
代码参见统计函数
3、设计中的主要困难及解决方案
设计中要对信息进行储存,这需要构造大学生消费的结构,采用结构体类型定义大学生消费的结构,结构数组的使用是解决该问题的关键,掌握结构体的使用方法与运行原理是解决该问题的必要条件,因此就对书本上的结构体进行了研究,最终掌握并成功使用该语句,实现数据的存储。
此外函数的调用是整个系统的主要部分,一开始并不知道如何调用函数,在参考任务书和其他资料后,使用switch语句实现在住函数中对所输入信息的要求调用各个函数。
4、你所设计的程序最终完成的功能
1)说明你编制的程序能完成的功能
能够实现对大学生消费信息的储存并在此基础上实现对信息的修改,查询,删除,排序,统计,浏览,实现对大学生消费信息的管理
2)准备的测试数据及运行结果
以下是某同学一年的消费信息(按照月份、吃饭消费、电话消费、买书消费、旅游消费、其它消费、勤工俭学收入顺序)
1322135256272124215
2124245135354242468
3241265142136245226
4144245134129250163
5241132241124247261
6281241169246341321
7152135241213135340
8164342158168297346
9214134245163246279
10216132246234124223
11145252113249163249
12249113246135144246
程序的主界面如下:
选择录入12个月信息,录入后界面如下
选择浏览消费信息,界面如下
选择统计消费信息,界面如下
选择排序消费信息,界面如下
选择查询消费信息并查询4月份信息,界面如下
选择修改消费信息并选择7月份信息,界面如下
选择删除消费信息并选择9月份,界面如下
三、程序清单
1)主函数
voidmain()
{
intm;
do//使用do…while语句进行主菜单的输出
{
cout< cout< cout<<"********************************************"< cout<<"*****欢迎使用大学生个人消费信息管理系统*****"< cout<<"********************************************"< cout<<"************录入消费记录,请选1*************"< cout<<"************修改消费记录,请选2*************"< cout<<"************查询消费记录,请选3*************"< cout<<"************删除消费记录,请选4*************"< cout<<"************排序消费记录,请选5*************"< cout<<"************统计消费记录,请选6*************"< cout<<"************浏览消费记录,请选7*************"< cout<<"**************退出系统,请选0***************"< cout<<"********************************************"< cout< cout<<"请选择: "< cin>>m; switch(m)//使用switch语句进行调用函数 { case1: input();break; case2: xiugai();break; case3: search();break; case4: shanchu();break; case5: paixu();break; case6: tongji();break; case7: output();break; case0: return; default: cout<<"输入有误! "< } }while(m! =0); } 2)录入函数 voidinput() { cout<<"请输入录入大学生个人消费信息系统的月份个数: "; cin>>n; cout<<"请输入大学生消费信息: (输入顺序: 月份、吃饭消费、 电话消费、买书消费、旅游消费、其它消费、勤工俭学收入)"< for(inti=0;i { cin>>stu[i].month>>stu[i].eat>>stu[i].phone>>stu[i].book>> stu[i].tour>>stu[i].other>>stu[i].work; stu[i].total=stu[i].eat+stu[i].phone+stu[i].book+ stu[i].tour+stu[i].other-stu[i].work;//使用结构数组 } } 3)浏览函数 voidoutput() { cout<<"月份"<<""<<"吃饭消费"<<""<<"电话消费"<<""<<"买书消费"<<""<<"旅游消费"<<""<<"其它消费"<<""<<"勤工俭学收入"<<""<<"月总支出"< for(inti=0;i cout<<""< } 4)排序函数 voidpaixu() { if(n>0) { for(intk=0;k { for(intm=0;m { expensemax; if(stu[m].total>stu[m+1].total) { max=stu[m+1]; stu[m+1]=stu[m]; stu[m]=max; } } } } output(); } 5)查询函数 voidsearch() { intmon; cout<<"请输入要查询信息的月份: ";cin>>mon;cout<<'\n'; for(inti=0;i { if(mon==stu[i].month) { cout<<"月份"<<""<<"吃饭消费"<<""<<"电话消费"<<""<<"买书消费"<<""<<"旅游消费"<<""<<"其它消费"<<""<<"勤工俭学收入"<<""<<"月总支出"< cout<<""< return; } } cout<<"记录不存在"< } 6)修改函数 voidxiugai() { intj; cout<<"请输入修改的月份: "; cin>>j; for(intm=0;m { if(stu[m].month==j) { cout<<"\0"< cout<<"请修改吃饭消费: "< cin>>stu[m].eat; cout<<"请修改电话消费: "< cin>>stu[m].phone; cout<<"请修改买书消费: "< cin>>stu[m].book; cout<<"请修改旅游消费: "< cin>>stu[m].tour; cout<<"请修改其他消费: "< cin>>stu[m].other; cout<<"请修改勤工收入: "< cin>>stu[m].work; } } } 7)删除函数 voidshanchu() { intno; cout<<"请输入要删除的月份: "; cin>>no; for(inti=0;i { if(no==stu[i].month) { while(i { stu[i]=stu[i+1]; i++; } } } n--; } 8)统计函数 voidtongji() { doublea=0,b=0,c=0,d=0,e=0,f=0,g=0; for(inti=0;i a+=stu[i].eat; for(i=0;i b+=stu[i].phone; for(i=0;i c+=stu[i].book; for(i=0;i d+=stu[i].tour; for(i=0;i e+=stu[i].other; for(i=0;i f+=stu[i].work; for(i=0;i g+=stu[i].total; cout<<"吃饭消费"<<""<<"电话话费"<<""<<"买书花费"<<""<<"旅游花费"<<""<<"其它花费"<<""<<"勤工俭学收入"<<""<<"月总支出"<
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 大学生 个人消费 管理 系统