个人帐簿管理系统设计Word文件下载.docx
《个人帐簿管理系统设计Word文件下载.docx》由会员分享,可在线阅读,更多相关《个人帐簿管理系统设计Word文件下载.docx(19页珍藏版)》请在冰豆网上搜索。
他人对某些问题的处理经验。
对于进入系统后可以输入和修改某月的收支情况,
可以对每月的开支从小到大进行排序,可以根据输入的月份查询每月的收支情
况。
在程序设计中,添加了使用说明和帮助事项,并且采用了面向对象这种解
决问题的方法。
程序通过调试运行,初步是想了设计目标,并且经过适当完善
后,将可以应用在个人理财解决实际问题。
一
引言
本课程设计主要解决在个人帐簿管理系统记录某人每月的全部收入及各项
开支情况,包括食品消费,房租,子女教育费用,水电费,医疗费,储蓄等。
进入系统后可以输入和修改某月的收支情况,可以对每月的开支从小到大进行
排序,可以根据输入的月份查询每月的收支情况。
现在是一个科技文化飞速发展的时代,家家户户都可以见到计算机的影子,
我们平时的生活,工作以及学习和娱乐都与电脑有着密切的联系。
随着经济的
发展,理财成为我们生活中不可缺少的内容,理财的重要性显而易见。
因此,
非常有必要设计一个个人帐薄管理系统,它能够为我们家庭生活个人理财提供
诸多方便,使理财更系统,更精确。
作为计算机应用的一部分,使用计算机提供个人帐薄管理系统,既继承了
传统理财形式,也克服了人工理财的许多缺点,譬如:
计算复杂,会时有错误,
而用计算机处理的话这种错误可以轻易避免;
输入方便,节省了理财人的时间,
提高效率和精确度。
查询方便、信息详细清晰。
便于理财。
二
需求分析
个人帐薄管理系统具有良好的性能和实用的功能,其性能的良好表现为:
输入性强、检索迅速、查询方便、可靠性高等,其实用的功能表现为:
由于个
人理财所要记载的项目比较琐碎,查询不方便,容易搞错顺序,应用该管理系
统可以输入任意每月开支情况,不但不会轻易犯错,而且可以容易修改每月的
记录,包括食品消费,房租,子女教育费用,水电费,医疗费,储蓄等。
节省
时间和空间,这些优点能够促进优化家庭及财政管理,促进财政管理的科技化
和现代化。
个人帐薄管理系统可以为用户提供任意月份的查询,月份消费信息包括食
品消费,房租,子女教育费用,水电费,医疗费,储蓄,具体信息如表
2-1
所
示。
表
个人开支项目信息表
数字编号名称具体信息
1
录入数据
录入个人每月份的开支情况
2
查看数据
查看所录入月份的开支情况
3
修改数据
如果录入开清情况有误,可以修改
4
查询数据
可以查询所有月份的开支情况
5
排序数据
可以把所要查询的月份的开支情况按从小到大
排列
6
删除数据
删除所输入月份的数据
退出系统
三
概要设计
设计本系统,首先要认真研读老是给的题目要求,仔细分析设计该题需要
用到的技术和知识,同时应该积极查询相关资料,复习有关知识,不懂的地方
多向同学以及朋友提问,从而达到事半功倍的想过,也可以参考网上的有关知
识帮助有自己解答,总之,就是动用一切可以动用的力量,达到充实自己的目
的!
以下为该设计系统流程图
开始
菜单
录
入
数
据
查
询
修
改
排
序
删
除
退
出
系
统
图
3.0
四
详细设计
结束
1
算法设计
(1)录入、查询、修改、删除数据。
建立一个文件,包括某人
个月的开支
情况,对文件中的信息扩充,包括修改,删除等。
所以先确定文件保存路径,
接受键盘输入,像文件内写入内容,将
dat
格式文件转换为
txt
文件,查询用
声明,自定义数据类型,然后返回查询结果及查询状态,继而对查询结果排序。
删除数据时,先调用打开转换的文本文件。
修改数据时,要重写数据,删除源
文件,重命名中间文件,显示新的数据。
(2)起泡排序
起泡排序是每趟把当先序列中最小的元素放在开始位置,是交换排序中最
简单的排序方法,其基本思想是:
两两比较相邻记录的关键码,如果反序则交
换,值到没有反序的记录为止,将整个待排序的记录序列分成为有序区和无序
区,初始状态有序区为空,无序区包括所有待排序的记录。
对无序去从前向后
依次将相邻记录的关键码进行比较,若反序则交换,从而使得关键码晓得记录
向前移,关键码大的记录向后移(像水中的气泡,体积大的先浮上来)。
重复执
行,之前无序区中没有反序的记录。
确定每趟范围。
(3)其基本思想是:
先确定文件保存路径,建立一个文件,录入个人
个月
的开支情况,对文件中的信息扩充,包括修改,删除等。
接受键盘输入,向文
件内写入内容,将
文件,然后输入
进行查看,查看
所录入的数据,如果数据有误,可以输入
修改数据,输入
查询所有月份的
开支情况,系统自动启用气泡排序对数据精心两两比较,按从小到大的顺序排
列。
实现代码
#include
<
stdio.h>
stdlib.h>
memory.h>
windows.h>
//文件保存路径
#define
FilePath1
"
Myinfor.dat"
FilePath2
Myinfor.txt"
//查询用声明
Status
int
OK
Error
NotFound
typedef
struct
{
int
month;
//月份
food;
//食品消费
house;
//房租费用
edu;
//子女教育费用
elc;
//水电费用
health;
//医疗费用
store;
//储蓄费用
income;
//收入费用
}
Infor;
{//
查询用自定义数据类型
no;
data;
}pType;
void
menu(void);
//菜单
input(Infor
*newI);
//接收键盘输入
writeinfor(Infor
//向文件内写入内容
changeFormat(void
);
//将
文件
search(Infor
*a);
//查询函数[返回查询的结果及查询的状态]
paixu(Infor
//对查询据结果排序
modify(Infor
*a,int
mon);
//修改数据
delRecord(int
//删除数据
main()
while
(1)
menu();
}
menu(void)
item;
mon;
Infor
*a;
a=(Infor
*)malloc(sizeof(Infor));
do{
printf("
\n…………个人帐簿管理系统-
-
软件
082
郭帅…………\n\n"
\t\t1.录入数据。
\n"
\t\t2.查看数据。
\t\t3.修改数据。
\t\t4.查询数据。
\t\t5.排序数据。
\t\t6.删除数据。
\t\t0.退出系统。
\n\n"
请输入要进行的操作:
scanf("
%d"
&
item);
}while(item>
||
item<
-1);
switch(item)
{//退出程序
case
0:
getchar();
//保存界面
exit(0);
break;
//录入数据
1:
input(a);
writeinfor(a);
//查看数据
2:
changeFormat();
3:
item=search(a);
mon=a->
if
(item!
=OK)
\n
没有符合条件的记录!
else
记录月份食品消费房租费用子女费用水电费用医疗费用储
蓄费用本月收入\n"
-----------------------------------------------------------------------
%7d
%8d
%8d\n"
a->
month,a->
food,a-
>
house,a->
edu,a->
elc,a->
health,a->
store,a->
income);
modify(a,mon);
//查询数据
4:
else{
//排序数据
5:
printf(