C语言课程设计报告——家庭财务管理系统.pdf





《C语言课程设计报告——家庭财务管理系统.pdf》由会员分享,可在线阅读,更多相关《C语言课程设计报告——家庭财务管理系统.pdf(24页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-.课程设计报告课程设计报告课程设计题目:家庭财务管理系统课程设计题目:家庭财务管理系统学生学生 XX:XX:专专 业业:信息工程信息工程班班级级:指导教师指导教师:20182018 年年1 1 月月8 8 日日-.可修编.-.1.1.需求分析需求分析根据家庭账务管理的需要,建立一个“家庭账务管理系统”,以方便对家庭日常收入及支出进行记录和管理。该系统要求:家庭月收入管理家庭月支出管理统计家庭总收入/总支出系统提供收入/支出的添加、删除和修改功能。2.2.总体设计总体设计根据以上分析,本家庭账务管理系统主要包括:根据以上分析,本家庭账务管理系统主要包括:从键盘键入家庭月收入、月支出数据;查询月
2、收入、月支出明细;删除收入、支出数据;修改收入、支出数据;统计总收入/总支出;退出系统。除除 main()main()函数之外,系统还定义了以下函数来实现各部分内容:函数之外,系统还定义了以下函数来实现各部分内容:add_ine():添加收入数据函数。add_payout():添加支出数据函数。search_data():查找数据函数。initialize():初始化函数,读取文本数据。show_info():显示数据函数。count_total():统计函数,统计总收入、总支出。update_data():修改信息函数。-.可修编.-.delete_data():删除数据函数。quit():
3、退出函数。程序结构功能图如下:程序结构功能图如下:3.3.详细设计详细设计3.1 收入管理-.可修编.-.3.2 支出管理-.可修编.-.4.4.测试结果测试结果4.14.1 程序运行主菜单程序运行主菜单-.可修编.-.4.24.2 添加收入测试添加收入测试4.34.3 查询收入明细测试查询收入明细测试-.可修编.-.4.44.4 删除收入测试删除收入测试-.可修编.-.4.54.5 修改收入测试修改收入测试-.可修编.-.4.64.6 添加支出测试添加支出测试-.可修编.-.4.74.7 查询支出明细测试查询支出明细测试4.84.8 删除支出测试删除支出测试-.可修编.-.4.94.9 修改
4、支出测试修改支出测试-.可修编.-.4.104.10 统计总收入统计总收入/支出测试支出测试-.可修编.-.4.114.11 退出系统测试退出系统测试5.5.软件操作使用说明书软件操作使用说明书本系统采用命令行对话方式进行操作,运行后出现主界面(如下图所示),然后按照主界面菜单指引操作即可。-.可修编.-.6.6.总结总结编写程序之前要有一个整体的思路,不能写到哪里算哪里。这样很容易遗漏,连续性也不好。通过本次的课程设计让我对于数组、文件的存放、循环结构等知识有了更加透彻的理解。希望在以后的课程设计中对于知识的运用能够更加的熟练。代码:#include#include#include#incl
5、ude#define MAXNAME 11/家庭成员XX的最大长度#define MAXDETAIL 21/注最大长度/自定义枚举类型fi_type,用来表示收入与支出typedef enum _fi_typeine=1,/收入payout=-1/支出 fi_type;/家庭财务信息结构体typedef struct _fi_infoint year;int month;fi_type type;char name9;float money;char detail11;fi_info;-.可修编.-./存储财务数据结构的结构体typedef struct _fi_datafi_info inf
6、o;struct _fi_data*next;fi_data;fi_data*head;/财务数据的头结点void menu();/菜单函数void add_ine();void search_ine();void delete_ine();void update_ine();void add_payout();void search_payout();void delete_payout();void update_payout();void count_total();void quit();/void search_data(fi_type type);void delete_data(
7、fi_type type);void update_data(fi_type type);/void initialize();void save_to_file();void clear_data();fi_data*get_last();fi_data*get_previous(fi_data*p);void input_info(fi_info*info);void show_info(fi_data*p);void menu()printf(n);printf(ttn);printf(ttn);printf(ttt家庭财务管理系统n);printf(ttn);printf(ttn);p
8、rintf(tt*n);printf(tt收入管理:);printf(1.添加收入);printf(2.查询收入明细n);printf(ttt 3.删除收入);-.可修编.-.printf(4.修改收入n);printf(tt*n);printf(tt支出管理:);printf(5.添加支出);printf(6.查询支出明细n);printf(ttt 7.删除支出);printf(8.修改支出n);printf(tt*n);printf(tt统计:);printf(9.统计总收入/总支出n);printf(tt*n);printf(tt退出:0.退出系统n);printf(tt*nnn);vo
9、id main()int selected=0;initialize();while(selected=0&selected请选择要进行的操作(0-9):);if(scanf(%d,&selected)!=1|selected9)printf(tt输入有误!请选择(0-9)之间的数字!按任意键重试);getchar();elseswitch(selected)case 0:exit(0);clear_data();break;case 1:add_ine();save_to_file();break;case 2:search_ine();break;case 3:delete_ine();s
10、ave_to_file();break;case 4:update_ine();save_to_file();break;case 5:add_payout();save_to_file();break;case 6:search_payout();break;case 7:delete_payout();save_to_file();break;case 8:update_payout();save_to_file();break;case 9:count_total();break;-.可修编.-.void add_ine()/添加收入fi_data*p=(fi_data*)malloc(
11、sizeof(fi_data);p-next=NULL;input_info(&(p-info);p-info.type=ine;if(head=NULL)head=p;elseget_last()-next=p;void add_payout()/添加支出fi_data*p=(fi_data*)malloc(sizeof(fi_data);p-next=NULL;input_info(&(p-info);p-info.type=payout;if(head=NULL)head=p;elseget_last()-next=p;/输入函数void input_info(fi_info*info)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 课程设计 报告 家庭 财务管理 系统

限制150内