运动会管理系统php,运动会管理系统源代码.doc

运动会管理系统源代码

运动会管理系统源代码include#include#includestruct student /* 定义链表 */{long num;char name[10];char danwei[10];int xiangmu;int chengji;struct student *next;};struct student *creat(struct student *h); /*s 输入函数 */struct student *findstudent(struct student *h); /* 查找函数 */struct student *sort(struct student *h); /* 排序函数 */main(){int b,c=1;struct student *head,*p,*f; /* 定义表头指针 */head=NULL; /* 创建一个空表 */printf("\t\t\t**********************\n");printf("\t\t\t****运动会管理系统****\t\t\n");printf("\t\t\t**********************\n");do /* 循环使用系统中的功能 */{printf("*************************************************************************\n");printf("\t\t请输入1或2或3进行功能选择\n"); printf("\t\t输入1---------------------进行输入功能\n"); printf("\t\t输入2---------------------进行查找功能\n"); printf("\t\t输入3---------------------进行排序功能\n");printf("*************************************************************************\n"); scanf("%d",&b); switch(b) /* 进入函数 */ {case 1:head=creat(head);break; case 2:p=findstudent(head);break; case 3:f=sort(head);break; default:printf("输入错误,请从新输入");}printf("*************************************************************************\n");printf("否进行其他功能?\n");printf("是输入------1,否输入------2:\n");scanf("%d",&c);}while(c==1);}/* 输入功能 */struct student *creat(struct student *h){struct student *p1,*p2; /* 定义链表指针 */p1=p2=(struct student*)malloc(sizeof(struct student)); /* 申请新结点 */printf("\n-------------------------------------------------------\n");printf("请依次输入运动员的号码、姓名、单位、项目(run为1,jump为2,swim为3)、成绩\n学号输入0时,结束输入!\n");printf("\n-------------------------------------------------------\n");if(p2!=NULL) printf("请输入号码:");scanf("%ld",&p2->num); /* 输入结点

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
目 录 摘 要 2 第1章 需求分析 2 第2章 概要设计 2 2.1系统总体设计框架 2 2.2系统功能模块图 3 第3章 详细设计 6 第4章 主要源程序代码 7 第5章 调试分析过程描述 17 第6章 总结 19 参考文献 19 学生课程设计报告评分表 20 校际运动会管理系统 摘 要 本文介绍了利用C语言对校际运动会管理系统进行设计的过程,从系统总体框架,功 能分析,模块设计与分析,类的设计与分析,功能测试等环节通过Microsoft Visual C++ 6.0对校际运动会管理系统进行详细的设计,并介绍了校际运动会管理系统如何运用,本 次设计是基于C语言的程序设计,利用了C语言的强大功能,设计出的程序运行良好,可 以在校际运动会管理系统等方面进行良好的运用。 关键词:C语言,班级档案管理系统,Microsoft Visual C++ 6.0 一、需求分析 (1)信息初始化 输入:N 参赛学校总数,M 男子竞赛项目数, W 女子竞赛项目数; 各项目名次取法有以下几种: 取前5名:第一名得分 7,第二名得分5,第三名得分3,第四名得分2,第五名得分1; 取前3名:第一名得分5,第二名得分3,第三名得分2; 用户自定义:各名次权值由用户指定。 (2)提醒用户填写比赛结果,输入各项目获奖运动员信息。 (3)所有信息记录完毕后,用户可以查询各个学校的比赛成绩,生成团体总分报表,察 看参赛学校信息和比赛项目信息等。 二、概要设计 分析整个系统,根据以上的需求分析及设计要求,可将整个系统的设计分为以下五个 模块:信息输入、录入比赛结果、查询信息、退出. 1. 系统总体设计框架 2. 系统功能模块图 各功能模块设计模块 信息输入模块 一是参赛学校信息,二是参赛运动员信息,三是比赛项目信息,分别输入并保存 void Information() { int n,w ; do { puts("\n\n\n"); puts("\t\t***^__^ Welcome to load 信息录入 system! ^__^***\n"); puts("\t\t*************************MENU*************************\n"); puts("\t\t******** 1.saveathlete **********\n"); puts("\t\t******** 2.saveschool **********\n"); puts("\t\t******** 3.saveprogram() **********\n"); puts("\t\t******** 4.back **********\n"); puts("\t\t***************************************\n"); printf("Choic your number(1-4):[ ]\b\b"); scanf("%d",&n); if (n<1""n>4) { w=1; getchar(); } else w=0; } while (w==1); switch(n) { case 1 : saveathlete(); break;// 保存运动员信息子函数 case 2 : saveschool(); break;//保存学校信息子函数 case 3 : saveprogram();break;//保存项目比赛信息子函数 case 4 : exit(0); } } 结果录入模块 (3)查询信息模块 [分析] 查询信息模块提供按不同方式查询各种信息机返回功能,其中各功能模块用菜单方式 选择。菜单部分也可写成函数。 3. 详细设计 1.主函数 主函数一般设计的较为简洁,只提供输入、功能处理和输出部分的函数调用。其中各 功能模块用菜单方式选择。另外菜单部分也可以写成函数。 2.流程图 [程序] void main() { menu(); } void menu() { int n,w1; do { puts("\t\t***^__^ Welcome to load sports system! ^__^***\n"); puts("\t\t************************MENU*************************\n"); puts("\t\t******** 1.Enter the information **************\n"); puts("\t\t******** 2.Score 比赛结果录入 **************\n"); puts("\t\t******** 3.Search **************\n"); puts("\t\t*******
课程设计任务书 题目:运动会成绩管理系统 一、课程设计时间 共计1周,20学时。 二、课程设计内容 用C语言编写软件完成以下任务: 1 录入运动员信息; 2 按项目查询运动员成绩; 3 按系排名(参照运动员的总成绩)。 三、课程设计要求 1. 程序质量: 贯彻结构化的程序设计思想。 用户界面友好,功能明确,操作方便。 用户界面中的菜单至少应包括"运动员信息录入"、"按项目查询运动员信息"、" 按系排名"、"退出"4项。 代码应适当缩进,并给出必要的注释,以增强程序的可读性。 2. 课程设计说明书: 课程结束后,上交课程设计说明书和源程序。课程设计说明书的格式和内容参见 提供的模板。 四、指导教师和学生签字 指导教师:________ 学生签名:________ 五、说明书成绩 目 录 一、需求分析 1 二、程序流程图 2 三、核心技术的实现说明及相应程序段 5 四、课设总结 9 五、参考文献 9 六、源程序 10 一、需求分析 经过对程序设计题目的分析可知,整个程序的设计实现大致分为3个模块,每一个模 块对应一个函数。在这些函数当中,添加学生数据函数,按系排名(参照学生总成绩) 函数,按项目查询学生成绩函数的实现严格按照题目的要求。主函数及菜单函数控制程 序的整体运行。 1. 添加学生数据函数 主要实现程序最初运行时学生数据的录入以及其后的运行中学生数据的追加功能; 2. 按系排名(参照学生总成绩)函数 按照题目的具体要求实现的是参照不同院系的学生的总成绩给出院系的排名; 3. 按项目查询函数 允许按照项目名称对学生的各项成绩进行查询; 除上面介绍的功能之外,程序还具有退出功能,可以在程序的一次运行当中循环执 行所有的功能,并根据需要终止程序的执行。 每一个学生记录都包含学号、姓名、系别,以及赛跑比赛、跳远比赛、跳高比赛三 门成绩,在程序当中,将学生记录类型定义为结构体类型,添加以及追加的学生信息直 接写入定义的结构体中,其它函数每次对学生记录的访问,其数据来源都是该结构体, 这样做不但可以保证学生数据的一致性,而且可以对学生数据进行永久保存,保证每次 运行程序都可以采用原来的数据。 二、程序流程图 1. 程序总体结构图 图1程序总体结构图 2. 具体功能框图 (1)添加学生数据函数add 图2 添加学生数据函数 (2)按系排名(参照学生总成绩)函数sort 图3按系别排名 (3)按项目查询函数query 三、核心技术的实现说明及相应程序段 本程序主要由三个自定义函数和一个主函数组成,其中主函数以菜单的形式调用其 它函数来实现要求的所有功能。在这些函数当中,添加学生数据函数、按系排名函数和 按项目查询函数是程序中较为核心的部分,下面分别进行说明。 1. 添加数据函数 当执行学生成绩录入功能时,所录入的数据被储存程序开头所定义的结构体中,并 且各种数据被保存其中,方便以后其他的功能函数调用。具体的程序段如下: int n,i; printf("请输入要添加的学生数量,按回车键确认:"); scanf("%d",&n); for(i=1;i<=n;i++) { printf("\n请输入第%d个学生的学号、姓名,系别,用空格分开,并按回车键确认:\n" ,i); scanf("%s%s%s",stu[i].num,stu[i].name,stu[i].xibie); printf("\n请输入第%d个学生的赛跑比赛、跳远比赛、跳高比赛,用空格分开,并按回 车键确认:\n",i); scanf("%f%f%f",&stu[i].race,&stu[i].jump,&stu[i].high); printf("%s %s %s %f %f %f \n",stu[i].num,stu[i].name,stu[i].xibie,stu[i].race,stu[i].jump,stu[i].high) ; } 2. 按系排名函数(参照学生总成绩) 对于按系的排名采用的排序算法是冒泡法排序,其中总成绩的求得是在排序的过程 中实现的,整个排序过程在结构体数组stu中实现,由于排序算法涉及到两个数组元素的 信息交换,因此还需要定义一个中间变量来协助。排序函数使学生数据的排列顺序发生 了变化,因此也需要对结构体进行更新。此外,对于系别排序后名次的确定,仅在结果 输出时予以显示。具体的程序段如下: int i,j; printf("*********************按系成绩排序结果如下*************************** *******\n\n"); printf(" 名次 系别 总成绩 \n"); printf("*******************************************************

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值