运动会管理系统源代码
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
运动会管理系统源代码
include
#include
#include
struct 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); /* 输入结点的值 */
if(p2->num!=0)
{
getchar();
printf("请输入姓名:");
gets(p2->name);
printf("请输入单位:");
scanf("%s",&p2->danwei);
printf("请输入项目 run则输入1 jump则输入2 swim则输入3:");
scanf("%d",&p2->xiangmu);
printf("请输入成绩:");
scanf("%d",&p2->chengji);
p2->next=NULL; /* 新结点指针成员的赋值为空 */
printf("---------------------------------------------------\n");
}
while(p2->num!=0)
{
if(h==NULL)
h=p2; /* 若为空表,接入表头 */
else
p1->next=p2; /* 若为非空表,接入表尾 */
p1=p2;
p2=(struct student*)malloc(sizeof(struct student)); /* 申请下一个新结点 */
if(p2!=NULL)
{
printf("请输入号码:");