C语言程序设计实验报告完整版(可追加分)

来源:百度知道 编辑:UC知道 时间:2024/06/15 19:40:05
校际运动会管理系统

要求

(1)信息初始化,输入:
N-参赛学校总数,M-男子竞赛项目数,W-女子竞赛项目数
各项目名次取法有下面几种:
1 提前5名:第一名得分7,第二名得分5,第三名得分3,第四名得分2,第五名得分1。
2 提前3名:第一名得分5,第二名得分,第三名得分2。
3 用户字定义:各名次权值由用户指定。
(2)提醒用户填写比赛结果,输入各项获奖运动员的信息。
(3)所有信息记录完毕后,用户可以查询各个学校的比赛成绩,生成团队总分报表,查看参赛学校信息和比赛项目信息等。

提示
(1)总体设计:系统设计为信息输入模块、比赛结果录入模块和查询模块3个模块
(2)数据结构采用数据体数组,包括学校、项目、运动员三个结构体。比如学校结构体成员包括学校校名、竞赛项目、得分;项目结构体成员包括项目名,权值。

报告包括下面几个

源程序清单:

(调试好的源程序代码)

主要标识符说明:

(源程序中主要标识符含义说明)

实验结果:

(程序运行结果)

实验环境:

(调试程序所使用的软硬件环境)

一定要完整的,就是包括下面的模版的全内容,我能直接COPY的!!!!分数可以再加!!!!

举手之劳,帮你写了。
这里设定姓名长度不超过20字符。每个项目结束时,将其编号、类型符(区分取前3名还是前5名)输入,并按名次顺序输入运动员姓名、学校和成绩。程序已做改动,增加了一些代码以提高程序的健壮性。本题完整的c程序如下,在win-tc和Dev-c++下调试通过,运行正确。
#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
#include <conio.h>
#define n 5 /*设定,可更改*/
#define m 3 /*设定,可更改*/
#define w 2 /*设定,可更改*/

struct achievement /* 定义表示成绩的结构体 */
{int schoolnumber;/* 学校编号 */
char name[20]; /* 姓名 */
int mark; /* 分数 */
int result;};

struct pro /* 表示项目的结构体 */
{int tag;/* 项目编号 */
struct achievement ach[m+w];
int number;
};

struct Node
{struct pro date;
struct Node *next;
};

main()
{
int i,j,t;
int x[n]={0};int y[n]={0}; /* x[n]和y[n]分别表示男子和女子团体总分 */
struct Node *head;
struct Node *p;
struct Node *q;
if((head=(struct Node*)malloc(sizeof(struct Node)))==NULL) exit(1);
head->next=NULL;