教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 专业资料 >

C语言程序设计实验报告

来源:网络收集 时间:2026-07-26
导读: 家庭财务管理系统 安阳工学院 C 语言 课 程 设 计 课程题目:家庭财务管理系统 院 系:计算机科学与信息工程学院 专业班级:11级计算机科学与技术(嵌入方向) 姓 名:吕鹏 学 号:201103010042 QQ 号码:1476265623 指导老师:高原 家庭财务管理系统 完成时

家庭财务管理系统

安阳工学院

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 函数显示查找到的收入 信息;如果查到的信息大于九条,则按空格键翻页。最后提示用户输出要删 除的收入信息的序号,完成删除操作。如果查找不成功,给出相应的提示信 息。提示用户是否继续删除操作,如果输入 Y 或 Y,则在进行操作,否则返 回主菜单界面。 七、改进或增加功能模块说明1、在程序中增加了设置密码选项,只有用户输入自己的密码才能进行各种操作,程序如下 #include<string.h> int main() { struct data { int i; char ch[20]; char name[20]; }dt; FILE * fp; char shuru[20]; char ch; char c; if((fp=fopen("aa.dat","w"))==NULL) { printf("Can not open 《aa.dat》file!\nPlease set up this file in same directory!\n"); printf("按回车键退出......\n"); ch=getchar();

家庭财务管理系统

fread(&dt,sizeof(struct data),1,fp); if(dt.i==2) { printf("请输入密码:"); gets(shuru); if(strcmp(shuru,dt.ch)==0) { main_1(); } else { printf("password error!\n"); printf("是否重设密码: Y N \n"); scanf("%c",&ch); c=getchar(); if(ch=='Y'||ch=='y') { printf("请输入用户名:"); gets(shuru); if(strcmp(shuru,)==0) { fp=fopen("aa.dat","w"); printf("**********************提示**********************\n"); printf("*账户已清除(原储存资料未清除)!请重设账户与密码!*\n"); printf("************************************************\n"); printf("按回车键退出......\n"); ch=getchar(); } } } fclose(fp); } else { if …… 此处隐藏:3624字,全部文档内容请下载后查看。喜欢就下载吧 ……

C语言程序设计实验报告.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/268384.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)