c语言课程设计报告-学校运动会管理系统
(10页)
本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!
19.90 积分
C 语言课程设计 题目名称: 学校运动会管理系统 姓名: 学号: 专业: 班级: 指导教师: 编写日期: 山东科技大学一、需求分析 问题描述: (1)初始化输入:N-参赛院系总数,M-男子竞赛项目数,W-女子竞赛项 目数; (2)各项目名次取法有如下几种: 取前 5 名:第 1 名得分 7,第 2 名得分 5,第 3 名得分 3,第 4 名得 分 2,第 5 名得分 1; (3)由程序提醒用户填写比赛结果,输入各项目获奖运动员的信息。 (4)所有信息记录完毕后,用户可以查询各个院系或个人的比赛成绩,生 成团体总分报 表,查看参赛院系信息、获奖运动员、比赛项目信息等。 二、总体设计 根据上面的需求分析,可以将这个系统的设计分为: 1、信息输入模块 ; 2、比赛结果录入模块; 3、查询模块。 具体校际运动会管理系统分为: 信息的输入、结果的输入、学校各个项目 的得分的查寻、总体报表的生成。 流程图如下: 开始 三、详细设计 (1)主函数 主函数一般设计的比较简洁,只提供输入,处理和输出部分的函数调开始 执 行输入 排序 修改 查找 输出用。其中功能模块用菜单方式选择。 (2)密码登陆函数 首先进入欢迎界面,提示用户输入密码进入系统,密码输入次数限制 为三次,三次输入错误则退出系统,登陆成功显示菜单栏。 (3)菜单函数 提醒用户根据要求选择功能,以及多次功能选取。 (4)输入函数 进入该功能后提醒用户输入相应信息,即数据结构,数据结构采用结 构体的形式,选手结构体成员包括选手的姓名、编号、各项目的成绩排名、 选手所在学院等。 (5)查找函数 提醒用户输入运动员的姓名或编号,根据姓名或编号逐一比对信息, 若条件满足则输出该选手的数据,若不满足则返回‘你要找的运动员未找 到’。 (6)排序函数 根据运动员的百米成绩进行冒泡排序,并输出结果。 (7)修改函数 提醒用户输入运动员的姓名,根据姓名逐一比对信息,若找到则提供 修改选项,对数据进行覆盖。 (8)得分计算函数 根据用户输入各项成绩排名,进行得分运算并得出学院排名。 (9)删除函数 用于输入信息的删除 (10)插入函数 用于输入新的信息信息输入 读入、显示参赛学 校 读入、显示运动员 读入比赛项目 (11)保存函数 将用户输入的信息保存到文本文件中 (12)显示函数 显示用户保存的信息 程序基本框架: 数据结构采用结构体的形式,包括学校、项目、运动员三个结构体。比如学校 结构体成员 主函数 信息输入 学校总数 男生项目数 女生项目数 比赛结果录入 检索 以学校检索 以项目检索 以运动员检索 退出结果录入模块 四.程序运行结果测试与分析 输入信息 选择计算方法输入比赛结果 录入运动员比赛得分 分析计算各学校总分 查询比赛信息 检索(学院) 检索(项目院) 遇到的问题: 在程序运行的过程中,出现了很多的错误。有很复杂的问题,也不乏许多 低级的错误。 在写入文件的时候,首先我用的是f write,而在读入文件的时候用的是 Freud,后来才发现这两个语句都只是对二进制的文件进行操作,实际上我们要 用到的Franciscan、footprint这两个语句。修改完的代码 FILE *f;//定义指向文件的指针 if((f=f open(“e:\\Xiaoping.TX“,“r“))==NULL) //为输出打开一个二进制文件,为只写方式 { print(“打不开文件Cannot open the file\n“); return; //若打不开则返回菜单 } Franciscan(f,“运动员号码,姓名,100成绩,铅球成绩,跳高成绩,跳 远成绩,系名:\n“); for(int i=0;i
天天文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。