个人帐簿管理系统设计

上传人:206****923 文档编号:91045522 上传时间:2019-06-21 格式:DOC 页数:22 大小:459KB
返回 下载 相关 举报
个人帐簿管理系统设计_第1页
第1页 / 共22页
个人帐簿管理系统设计_第2页
第2页 / 共22页
个人帐簿管理系统设计_第3页
第3页 / 共22页
个人帐簿管理系统设计_第4页
第4页 / 共22页
个人帐簿管理系统设计_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《个人帐簿管理系统设计》由会员分享,可在线阅读,更多相关《个人帐簿管理系统设计(22页珍藏版)》请在金锄头文库上搜索。

1、数据结构课程设计报告个人帐簿管理系统设计2010年 01 月 21 日目 录1. 引 言-(1)2 需求分析-(2)3 概要设计-(4)4 详细设计-(5)5 测试结果-(6)6 设计体会- (12)7 结束语-(13)8 参考文献-(11)摘 要该课程设计主要设计个人账簿管理系统以记录某人每月的全部收入及各项开支情况,包括食品消费,房租,子女教育费用,水电费,医疗费,储蓄等。在课程设计中,用到了C语言以及数据结构中的相关知识,当然也有少数参考了其他人对某些问题的处理经验。对于进入系统后可以输入和修改某月的收支情况,可以对每月的开支从小到大进行排序,可以根据输入的月份查询每月的收支情况。在程序

2、设计中,添加了使用说明和帮助事项,并且采用了面向对象这种解决问题的方法。程序通过调试运行,初步是想了设计目标,并且经过适当完善后,将可以应用在个人理财解决实际问题。一 引 言本课程设计主要解决在个人帐簿管理系统记录某人每月的全部收入及各项开支情况,包括食品消费,房租,子女教育费用,水电费,医疗费,储蓄等。进入系统后可以输入和修改某月的收支情况,可以对每月的开支从小到大进行排序,可以根据输入的月份查询每月的收支情况。现在是一个科技文化飞速发展的时代,家家户户都可以见到计算机的影子,我们平时的生活,工作以及学习和娱乐都与电脑有着密切的联系。随着经济的发展,理财成为我们生活中不可缺少的内容,理财的重

3、要性显而易见。因此,非常有必要设计一个个人帐薄管理系统,它能够为我们家庭生活个人理财提供诸多方便,使理财更系统,更精确。作为计算机应用的一部分,使用计算机提供个人帐薄管理系统,既继承了传统理财形式,也克服了人工理财的许多缺点,譬如:计算复杂,会时有错误,而用计算机处理的话这种错误可以轻易避免;输入方便,节省了理财人的时间,提高效率和精确度。查询方便、信息详细清晰。便于理财。二 需求分析个人帐薄管理系统具有良好的性能和实用的功能,其性能的良好表现为:输入性强、检索迅速、查询方便、可靠性高等,其实用的功能表现为:由于个人理财所要记载的项目比较琐碎,查询不方便,容易搞错顺序,应用该管理系统可以输入任

4、意每月开支情况,不但不会轻易犯错,而且可以容易修改每月的记录,包括食品消费,房租,子女教育费用,水电费,医疗费,储蓄等。节省时间和空间,这些优点能够促进优化家庭及财政管理,促进财政管理的科技化和现代化。个人帐薄管理系统可以为用户提供任意月份的查询,月份消费信息包括食品消费,房租,子女教育费用,水电费,医疗费,储蓄,具体信息如表2-1所示。表2-1 个人开支项目信息表数字编号名称具体信息1录入数据录入个人每月份的开支情况2查看数据查看所录入月份的开支情况3修改数据如果录入开清情况有误,可以修改4查询数据可以查询所有月份的开支情况5排序数据可以把所要查询的月份的开支情况按从小到大排列6删除数据删除

5、所输入月份的数据0退出系统退出系统三 概要设计设计本系统,首先要认真研读老是给的题目要求,仔细分析设计该题需要用到的技术和知识,同时应该积极查询相关资料,复习有关知识,不懂的地方多向同学以及朋友提问,从而达到事半功倍的想过,也可以参考网上的有关知识帮助有自己解答,总之,就是动用一切可以动用的力量,达到充实自己的目的!以下为该设计系统流程图开始结束0退出系统6删除数据5排序数据4查询数据3修改数据2查询数据1录入数据菜单 图3.0四 详细设计1 算法设计(1)录入、查询、修改、删除数据。建立一个文件,包括某人5个月的开支情况,对文件中的信息扩充,包括修改,删除等。所以先确定文件保存路径,接受键盘

6、输入,像文件内写入内容,将dat格式文件转换为txt文件,查询用声明,自定义数据类型,然后返回查询结果及查询状态,继而对查询结果排序。删除数据时,先调用打开转换的文本文件。修改数据时,要重写数据,删除源文件,重命名中间文件,显示新的数据。 (2)起泡排序 起泡排序是每趟把当先序列中最小的元素放在开始位置,是交换排序中最简单的排序方法,其基本思想是:两两比较相邻记录的关键码,如果反序则交换,值到没有反序的记录为止,将整个待排序的记录序列分成为有序区和无序区,初始状态有序区为空,无序区包括所有待排序的记录。对无序去从前向后依次将相邻记录的关键码进行比较,若反序则交换,从而使得关键码晓得记录向前移,

7、关键码大的记录向后移(像水中的气泡,体积大的先浮上来)。重复执行,之前无序区中没有反序的记录。确定每趟范围。 (3)其基本思想是:先确定文件保存路径,建立一个文件,录入个人5个月的开支情况,对文件中的信息扩充,包括修改,删除等。接受键盘输入,向文件内写入内容,将dat格式文件转换为txt文件,然后输入2进行查看,查看所录入的数据,如果数据有误,可以输入3修改数据,输入4查询所有月份的开支情况,系统自动启用气泡排序对数据精心两两比较,按从小到大的顺序排列。2 实现代码#include #include #include #include /文件保存路径#define FilePath1 Myin

8、for.dat#define FilePath2 Myinfor.txt/查询用声明#define Status int#define OK 1#define Error 0#define NotFound 2typedef struct int month;/月份 int food;/食品消费 int house;/房租费用 int edu;/子女教育费用 int elc;/水电费用 int health;/医疗费用 int store;/储蓄费用 int income;/收入费用 Infor;typedef struct / 查询用自定义数据类型 int no; int data; pTy

9、pe;void menu(void); /菜单void input(Infor *newI); /接收键盘输入void writeinfor(Infor *newI);/向文件内写入内容void changeFormat(void );/将dat格式文件转换为txt文件Status search(Infor *a);/查询函数返回查询的结果及查询的状态void paixu(Infor *a);/对查询据结果排序void modify(Infor *a,int mon);/修改数据void delRecord(int mon);/删除数据void main() while(1) menu();

10、void menu(void) int item; int mon; Infor *a; a=(Infor *)malloc(sizeof(Infor); do printf(n个人帐簿管理系统- - 软件082郭帅nn); printf(tt1.录入数据。n); printf(tt2.查看数据。n); printf(tt3.修改数据。n); printf(tt4.查询数据。n); printf(tt5.排序数据。n); printf(tt6.删除数据。n); printf(tt0.退出系统。nn); printf(请输入要进行的操作: ); scanf(%d,&item); while(item6 | itemmonth; if (item!=OK) printf(n没有符合条件的记录!n); else printf(n记录月份食品消费房租费用子女费用水电费用医疗费用储蓄费用本月收入n); printf(- n); printf(%7d %8d %8d %8d %8d %8d %8d %8dn,a-month,a-food,a-house,a-edu,a-elc,a-health,a-store,a-income); input(a);

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 其它中学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号