C语言课程设计校园卡管理系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
湖南涉外经济学院课程设计报告
课程名称: C语言课程设计
报告题目:校园卡管理系统
学生姓名:***
所在学院:信息科学与工程学院
专业班级:电信1202班
学生学号: ************** 指导教师:彭琼王晓秋
20 13 年6月21日
C语言程序设计课程设计任务书
摘要
校园卡管理系统(以下简称:卡管系统)是应用于校园卡管系统和应用的软件,该软件在程序设计中有它不可取代的地位,该软件是以C语言为实现语言,其功能在系统内部有源代码直接完成,管理者只需输入一些简单的汉字、数字,即可达到自己管理用户的目标。
学校校园卡管理系统以菜单方式工作,密码登陆。其中有校园卡信息的录入功能(增加数据),校园卡信息的删除(删除数据),校园卡信息的浏览功能(查找数据),校园卡信息的修改(修改数据),校园卡信息的排序的6种功能。校园卡信息的录入采用结构体存放校园卡信息,也可采用多维数组存放;而校园卡信息的删除是任意输入一本校园卡的编号,可以将它所有的校园卡删除;同时校园卡信息的浏览功能可以任意输入一张校园卡的卡号,显示出所有相关数据,能多次查找。
校园卡信息需要修改时,任意输入校园卡的卡号,显示出所有相关信息后,给出提示菜单,可选择对某一项信息进行修改并保存;最后就是校园卡信息的排序。可以将所有校园卡的信息按余额从低到高依次显示出来。
关键词:添加、删除、查找、修改、排序
目录
一、概述 (1)
二、需求分析 (2)
三、系统设计 (3)
四、添加模块详细设计与实现 (4)
五、结论与心得 (6)
六、参考文献 (6)
一、概述
选择这个课题主要是了解校园卡管理系统的内涵,综合学期所学的知识来编译一个系统,了解C语言的作用以及重要性,从中来学好这门语言,巩固这一学期来所学到的知识。
本课题有四人组成的课题小组,【组长:万智亮(1、2、4);组员:王红阳(6)、董浩(3)、姚江宁(5)】组员对设计、个模块编程、撰写文档、测试等任务有明确的分工,并在项目开始时有和合理的进度计划。各自对应自己所做的步骤如上小括号标示具体内容下:
1、系统以菜单方式工作,密码登陆。
2、校园卡信息的录入功能(增加数据)。用数组数据类型赋初值的方法把校园卡信息(包括卡号,姓名,学生所在学院、余额等)送到各个数组中(但注意要是合法数据),然后把它们输出显示。
3、校园卡信息的删除(删除数据)。任意输入校园卡的编号,将它所有的信息从数组中删除。
4、校园卡信息的浏览功能(查找数据)。任意输入一张卡的编号,打印出所有相关数据。要求能多次查找。
5、校园卡信息的修改(修改数据)。任意输入一张卡的编号,打印出所有相关信息后,可对卡的信息进行修改并保存。
6、校园卡余额的计算并排序。统计所有校园卡的余额,将包括所有数据的数组元素按价格从高到低的顺序排序打印出来。
7、(选做)校园卡的充值和消费。通过界面可对校园卡金额进行充值或消费,消费时要先检查剩余金额是否足够。
二、需求分析
1.添加学生信息卡号
添加数据:根据主函数,在声明函数之后,调用用函数void zjsj来实现此操作,对已经注册的登录用户有自己的个人卡号系统的录入功能。
2.删除旧卡
删除数据;任意输入校园卡的编号,将它所有的信息从数组中删除,调用函数void scsj来进行操作,登录用户拥有自己校园卡管理的查询功能,可以按条件查询和模糊查询。
3.修改校园卡
修改数据:任意输入一张卡的编号,打印出所有相关信息后,可对卡;的信息进行修改并保存,调用void xgsj函数来实现此操作。
4.查询校园卡
查找数据:任意输入一张卡的编号,打印出所有相关数据。要求能多次查找。查找数据)。任意输入一张卡的编号,打印出所有相关数据。要求能多次查找。可调用void czsj函数进行操作。
5.排序校园卡
排序模块:统计所有校园卡的余额,将包括所有数据的数组元素按价格从高到低的顺序排序打印出来。可调用void jspx函数来实现此功能。
三、系统设计
校园卡管理系统分为:(登陆界面→添加新卡→删除数据→查找数据→查找数据→计算并排序)
2.总流程图
3.技术路线
数据结构形式:结构体+二叉排序树。以用户为节点建立二叉排序树,以玩家为节点,以结构体形式接在用户节点之后。功能:查找(按照卡号、姓名)、插入添加学生信息(按卡号)、删除、排序、查看、修改、查找、密码登录、初始化;
四、详细设计
【校园卡管理系统】我负责的是以上所画流程图这三个方面,在做之前可谓是不知如何动手,但是光坐到那里不做事却更加浪费时间,所以自己下了一个决心,没有绝对的事物是自己会做的,自有自己用心去做你才会懂得怎样去做,怎样去思考,怎样去分析。程序详细分析:
#include
#include
#include
#include
#include
struct car /*校园卡的数据类型*/
{
int num;//定义变量
char name[10];
char class1[10];//字符变量
int money;
};
struct car card[100]; /*定义学生信息的结构体类型*/ void main()//函数体
{
void dljm();//声明“登陆界面”函数
void mima();//声明“密码”函数
void zjsj();//声明“添加数据”函数
void scsj();//声明“删除数据”函数
void czsj();//声明“查找数据”函数
void xgsj();//声明“修改数据”函数
void jspx();//声明“计算排序”函数
mima();//调用“密码”函数
dljm();//调用“登陆界面”函数
//scsj();
}
int u,t;
//void main ()
//{
//}
注释1:以上程序代码为函数头文件以及函数声明部分。
void mima()
{
char a[7],b[]={"533159"};
int i,j;
for (j=1;j<=3;j++)
{printf("\t\t请输入密码:");