⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 运动会分数统计.cpp

📁 编制一个运动会分数统计的程序
💻 CPP
字号:
#include <stdio.h>
#include <stdlib.h>

typedef struct single{
	int school,item,mingci,score;
	char name[20];
	struct single *next,*prior;
}Single;  								//每个运动员的信息
typedef struct group {
	int menscore,womenscore, score;
}Group;  								//团体分数
void InputData(Single *p,Group sch[21])
{  										//数据输入
	int m,w,i,j,a,b;
    Single *q;
	printf("有多少个男子项目:");
	scanf("%d",&m);
	printf("有多少个女子项目:");
	scanf("%d",&w);
    for(b=1;b<=m+w;b++){
       printf("请输入当前项目编号:");
	   scanf("%d",&i);
	   printf("请输入项目类型(前3还是前5):");
	   scanf("%d",&a);
	   for(j=1;j<=a;j++){
		   printf("请输入第%d名的名字:",j);
		   scanf("%s",&p->name);
           printf("请输入第%d名的学校编号:",j);
		   scanf("%d",&p->school);
		   p->mingci=j;
		   if(a==5)
{if(j==1) p->score=7;
					if(j==2) p->score=5;
					if(j==3) p->score=3;
					if(j==4) p->score=2;
					if(j==5) p->score=1;}
			  else {if(j==1) p->score=5;
			        if(j==2) p->score=3;
					if(j==3) p->score=2;}
			 p->item=i;
		   if(i<=m){sch[p->school].menscore+=p->score;
		   sch[p->school].score=sch[p->school].menscore+sch[p->school].womenscore;}
		   else {  sch[p->school].womenscore+=p->score;
		           sch[p->school].score=sch[p->school].menscore+sch[p->school].womenscore;}  
            p->next=(struct single *)malloc(sizeof(struct single));
            q=p;
	        p=p->next;
	        p->prior=q;
	        p->next=NULL;
	   }
	}
}
void printsingle(Single *p,Single *head,int n)
{   									//输出每个学校获奖人员名单  
	int j;
		for(j=1;j<=n;j++){
			printf("编号为%d的学校的成绩单:\n",j);
			printf("\t项目编号\t姓名\t名次\t分数\n");
		    for(p=head;p!=NULL;p=p->next)
				if(p->school==j) printf("\t%d\t\t%s\t%d\t%d\n",p->item,p->name,p->mingci,p->score);
						}
}
void printgroup(Group sch[21],int n)
{   									//输出团体总分  
	int j;
		for(j=1;j<=n;j++){
				printf("编号为%d的学校的团体分数报表:\n",j);
				printf("\t男子团体\t女子团体\t团体总分\n");
                printf("\t%d\t%d\t%d\n",sch[j].menscore,sch[j].womenscore,sch[j].score);
				
		}
}
void main()
{   int n;
	Single *p,*head;
	Group sch[21]={0,0,0,0,0,0,};
    p=head=(struct single *)malloc(sizeof(struct single));
    p->next=NULL;
	printf("请输入参加运动会的学校个数:");
	scanf("%d",&n);
    InputData(p,sch);
	printsingle(p,head,n);
	printgroup(sch,n);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -