C语言程序设计实验报告

时间:2025-07-12

家庭财务管理系统

安阳工学院

C 语言 课 程 设 计

课程题目:家庭财务管理系统

院 系:计算机科学与信息工程学院 专业班级:11级计算机科学与技术(嵌入方向) 姓 名:吕鹏

学 号:201103010042 QQ 号码:1476265623 指导老师:高原

家庭财务管理系统

完成时间:公元二零一二年六月十五

课 程 设 计 任 务 书

家庭财务管理系统

工作计划: 1. 小组审题,查阅资料,进行设计前的必要资料准备(2 天) 。 2. 把程序完整运行出来(3 天) 。 3. 增加改进程序(2 天) 。 4. 写课程设计报告(2 天) 。 5. 提交课程设计报告及答辩(1 天) 任务下达日期:2012 任务完成日期:2012 年 6 月 1 日 年 6 月 15 日 指导教师(签名) : 学生(签名) :

吕鹏

家庭财务管理系统一、设计要求1.要求使用多文件方式实现设计. 2.要求在各个文件内实现结构化设计. 3.每个模块作为一个单独的 C 文件. 4.宏和数据结构等放在头文件中,并使用条件编译.

二、系统的功能模块 根据设计要求,学生成绩管理系统功能模块如图 2-1 所示。

家庭财务管理系统

收入管理

支出管理

统计

退出

添对 加法 收 入

查 删 除 询 收 收 入 图 2—1 入 明 细 反

修 改 收 入

添 加 支 出

查 询 支 出 明 细

删 除 支 出

修 改 支 出

家庭财务管理系统

三、数据结构定义及描述#define MAX_NAME 11/*家庭成员姓名最大长度*/ #define MAX_DETAIL 21/*备注最大长度*/ #define MENU_COUNT 9 /*菜单选项个数*/

#define DATA_FILE "fs.dat"/*数据文件文件名*/ typedef enum _fi_type /*自定义枚举型表示收入收出*/ { income = 1,/*收入*/ payout = -1/*支出*/ }fi_type; typedef struct _fi_info/*储存家庭财务信息的结构体*/ { int year;/*年*/ int month;/*月*/ fi_type type;/*数据类型*/ char name[MAX_NAME];/*家庭成员姓名*/ float money;/*收入或支出金额*/ char detail [MAX_DETAIL];/*备注*/ }fi_info; typedef struct _fi_data/*储存财务数据结构

的结构体*/ { fi_info info;/*财务数据*/

家庭财务管理系统

每个家庭成员的财务讯息用结构体 fi_info 来储存,用结构体 fi_date 来储存财务的数据,其中 MAX_NAME, 家庭成员姓名的长度, MAX_DETAIL 来限定备注的长度。 用 其中 struct _fi_data*next; 来表示指向下一个节点的指针,用于方便操作。

四、函数功能及参数说明、相互调用关系根据功能模块划分,学生成绩管理系统需建立的文件、各文件所包含的函数以及 各函数的相互调用关系下表所示。

源函数

menu

函数名称 quit add_income search_income delete_income updete_income add_payout search_payout delete_payout updete_payout count_total 表4-1

函数功能 退出系统 添加收入 查询收入明细 删除收入 修改收入 添加支出 查询支出明细 删除支出 修改支出 统计总支出收入

总控函数

main()

函数名称 search_date delete_date

函数功能 查询处理 删除处理

家庭财务管理系统

函数名称 initialize save_to_file() clear_date() 辅助函数 fi_date* get_last fi_date* get_previous input_info show_info fi_data*head

函数功能 系统初始化 将财务数据保存到文件 清空链表中的数据 得到财务链表最后一个节点 取得财务数据节点的前一个节点 输入财务数据信息 显示财务数据 财务数据的头节点

图 4-3五、各变量的定义和作用

#define MAX_NAME 11/*家庭成员姓名最大长度*/ #define MAX_DETAIL 21/*备注最大长度*/ #define MENU_COUNT 9 /*菜单选项个数*/

#define DATA_FILE "fs.dat"/*数据文件文件名*/ typedef struct _fi_info/*储存家庭财务信息的结构体*/ { int year;/*年*/ int month;/*月*/ fi_type type;/*数据类型*/ char name[MAX_NAME];/*家庭成员姓名*/ float money;/*收入或支出金额*/ char detail [MAX_DETAIL];/*备注*/

家庭财务管理系统

主函数(main())在此文件的主要功能是根据用户输入不同的值, 调用对应的处理 函数,用户输入的数值与之对应的处理函数如下图所示。 主函数 main(),输入不同的数值调用不同的处理函数 数 1 值 调 添 加 查 询 收 删除 修 改 添 加 查 询 删 除 支 修 改 统 计 退出系统 用 收入 函 数 功 能 调 add_ 用 inco 函 me 数 类 型 输入错误后,请选择 0-9 的任意数重试 Search_ income dele te_ inco me updat e_ incom e add_ payou t searc h_ payou t delete_ payout updat e payou t count total quit 入明细 收入 收入 支出 支 出 出 明细 支出 总 支 出 收 入 2 3 4 5 6 7 8 9 0

2、search_date该函数的功能是收入和支出的查询操作。提示用户按照指定的格式输入要 查询的年月,如果用户输入错误,给出相应的提示信息,如果用户输入正确, 则在单链表中查询该年月的收入信息。如果查询成功,判断查询的个数是否 小于九,调用函数 show_info 显示找到的收入信息;如果大于 9,按空格键进

家庭财务管理系统

3、delte_data该函数的功能为收入和支

出的删除操作,首先提示用户输入要删除收入 的年月,然后根据用户收入的年月信息在单链中查找相关的信息,如果查找 成功,且查找的数据小于 9,直接调用 show_info()h 函数显示查找到的收入 信息;如果查到的信息大于九条,则按空格键翻页。最后提示用户输出要删 除的收入信息的 …… 此处隐藏:2769字,全部文档内容请下载后查看。喜欢就下载吧 ……

C语言程序设计实验报告.doc 将本文的Word文档下载到电脑

精彩图片

热门精选

大家正在看

× 游客快捷下载通道(下载后可以自由复制和排版)

限时特价:7 元/份 原价:20元

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219