程序设计课程设计报告
( 2012-- 2013年度第2学期)
个人账簿管理系统的设计
专业
软件工程
学生姓名
班级
软件121
学号
指导教师
完成日期
目 录 TOC \o "1-5" \h \z \u
1 概 述 1
课程设计目的 1
课程设计内容 1
2 系统需求分析 1
系统目标 1
主体功能 1
开发环境 DEVC++ 2
3 系统概要设计 2
系统的功能模块划分 2
系统流程图 2
4系统详细设计 4
个人账簿管理系统主函数前常变量定义和函数声明 4
个人账簿管理系统主函数 4
个人账簿管理系统注册函数、登陆函数和正常退出函数(Quit) 5
个人账簿管理系统主菜单函数和查找子菜单函数 5
个人账簿管理系统录入收支模块 6
个人账簿管理系统查询模块 6
个人账簿管理系统修改数据模块 7
个人账簿管理系统排序模块 7
个人账簿管理系统帮助说明 7
5 测试 7
测试方案 7
测试结果 7
6小结 13
参考文献 14
附 录 15
附录1 源程序清单 15
附录个人账簿管理系统主函数前声明 15
附录个人账簿管理系统注册、登陆和退出 16
附录个人账簿管理系统菜单和子菜单函数 19
附录个人账簿管理系统收支录入和写入文件 25
附录 个人账簿管理系统查找函数 26
附录 个人账簿管理系统移除记录函数 29
附录 个人账簿管理系统排序函数 29
附录 个人账簿管理系统说明函数 30
个人账簿管理系统的设计
1 概 述
课程设计目的
1).加深对《C语言程序设计》课程知识的理解,掌握C语言应用程序的开发方法和步骤;
2).进一步掌握和利用C语言进行设计的能力;
3).进一步理解和运用结构化程序设计的思想和方法;
4).初步掌握开发一个小型实用系统的基本方法;
5).学会调试一个较长程序的基本方法;
6).学会利用流程图或N-S图表示算法;
7).掌握书写程序设计开发文档的能力(书写课程设计报告)。
课程设计内容
(1)根据分组情况单独完成规定的设计内容;
(2)源程序要有适当的注释,使程序容易阅读;
(3)至少采用文本菜单界面(如果能采用图形菜单界面更好);
(4)学生可自动增加新功能模块(视情况可另外加分);
(5)写出课程设计报告,具体要求见相关说明文档。
2 系统需求分析
系统目标
1) 实现个人账簿管理系统的基本功能。包括:记录某人每月全部收入和开支情况。进入系统后可以增加、删除修改记录,可以提供查询和支出排序功能
2) 对系统进行扩充,实现多人账户,通过输入用户名和密码形式登陆之后才进行系统操作
3) 对系统进一步扩充,细化各功能模块。
3) 美化界面,使使用界面更加人性化,使用更方便。
主体功能
1) 增加一条收支记录,记录某人某月收支情况
2) 查询本系统所有用户的全部收支信息
3) 修改某人某月的收支记录
4) 删除某人某月的收支记录
5) 输入条件进行查找收支记录
6) 删除一条收支记录
7) 系统说明可查看功能结构以及制作者
开发环境 DEVC++
3 系统概要设计
系统的功能模块划分
1) 注册用户和登陆用户:
a注册:输入正确管理员指令才可注册,否则警告并返回原界面。
b登陆:输入正确的用户名和密码进入个人账簿管理系统主功能界面。
2) 主功能界面(登陆后才可进入):
a 录入账目:录入后写数据进"”文件
b 查看所有(需要先输入管理员权限)
c 修改数据:输入月份,修改该月收支记录
d 查找数据:分为精确查找和按用户查找两类
e 排序收支:先输入月份,对某月全部开支进行排序
f 删除记录:先确定要删除的月份再删除
g系统说明
系统流程图
关于本系统流程图的简要说明:
1) 首先定义了三个结构体变量,分别是US用户密码信息结构体,Bill开支记录结构体和Sort不同类型开支的结构体,在宏定义中设置了管理员权限指令和最大用户名,最大密码长度以及三个文件路径以供本系统存储、查找、调用
2) 主函数包括了登陆函数(Loadin)、注册函数(Register)和正常退出函数(Quit)。
注册函数:如果输入正确指令将注册。注册成功后进入登陆函数,指令错误警告并返回最初界面
3) 登陆函数:如果登陆失败警告并返回原界面;登陆成功则进入菜单函数(Menu)
菜单函数主要包括录入账目(Input函数和IriteFile函数)、查看所有(FindA