您的位置:首页 > 教程文章 > 编程开发

C++课程设计之运动会管理系统

:0 :2021-04-27 18:31:55

本文实例为大家分享了C++运动会管理系统的实现代码,供大家参考,具体内容如下
#include
#define MAX 10
#include
#include "fstream.h"
int n,m,w;
class gamescore
{public:
int academynum; //院系编号
int score[MAX][MAX]; //记录成绩的2维数组
int totalscore[MAX]; //院总分存储数组
int mentotalscore[MAX]; //男团总分存储数组
int womentotalscore[MAX];//女团总分存储数组
int projectnum; //项目编号
gamescore()
{
academynum=0;
projectnum=0;
}
void search(int academynum,int projectnum);
void remove(int academynum,int projectnum);
void repair(int academynum,int projectnum);
void save(); //保存成绩
void input();
void sort1(); //按院总分排序
void sort2(); //按男团总分排序
void sort3(); //按女团总分排序
void hold(); //存储总分数
int academytotalscore(int academynum); //院总分
int academywomentotalscore(int academynum); //院女团总分
int academymentotalscore(int academynum); //院男团总分
void output1(int academy); //输出院系的成绩列表
void output2(int academynum); //输出院系的团体成绩列表
};
void gamescore::input()
{ int i,j;
for(i=0;i { cout<<"输入编号为"< for(j=0;j {
cout<<"输入编号为"< cin>>score[i][j];
if(score[i][j]!=0&&score[i][j]!=2&&score[i][j]!=5&&score[i][j]!=10)
{
cout<<"成绩输入错误,请检查后再输入"< cin>>score[i][j];
}
}
}
if(i=n-1) cout<<"!!输入完毕"<}
void gamescore::save()
{ ofstream ofs("运动会成绩.txt");
ofs<<"将最终学院参加的对应项目成绩列表列出(行表示学院编号,列表示项目编号)"<
for(int i=0;i {
for(int j=0;j {
ofs< }
ofs< }
for(i=1;i<=n;i++)
{
ofs<<"编号为"< ofs<<"编号为"< ofs<<"编号为"< }

ofs.close();
}
int gamescore::academytotalscore(int academynum)//院总分
{
int sum=score[academynum-1][0];
for(int i=1;i {

sum=sum+score[academynum-1][i];
}
return sum;
}
int gamescore::academywomentotalscore(int academynum)//院女团总分
{
int sum=score[academynum-1][m];
for(int i=m+1;i {
sum=sum+score[academynum-1][i];
}
return sum;
}
int gamescore::academymentotalscore(int academynum)//院男团总分
{
int sum=score[academynum-1][0];
for(int i=1;i {

sum=sum+score[academynum-1][i];
}
return sum;
}

void gamescore::hold()//存储总分
{
for(int i=1;i<=n;i++)
{
totalscore[i-1]=academytotalscore(i);
mentotalscore[i-1]=academymentotalscore(i);
womentotalscore[i-1]=academywomentotalscore(i);
}
}
void gamescore::sort1()//按院系总分排序
{
int p,q;
int a[MAX];
for(int i=0;i {
a[i]=i+1;
}
for(int j=0;j {
for(i=0;i<=n-1-j;i++)
{
if(totalscore[i] {
p=totalscore[i];
totalscore[i]=totalscore[i+1];
totalscore[i+1]=p;
q=a[i];
a[i]=a[i+1];
a[i+1]=q;
}
}
}
cout<<"按院系总分从大到小排序,以及对应的院系编号为:"< for(j=0;j {
cout< }
cout< for(j=0;j {
cout< }
cout<}
void gamescore::sort2()//按男团总分排序
{
int p,q;
int a[MAX];
for(int i=0;i {
a[i]=i+1;
}
for(int j=0;j {
for(i=0;i<=n-1-j;i++)
{
if(mentotalscore[i] {
p=mentotalscore[i];
mentotalscore[i]=mentotalscore[i+1];
mentotalscore[i+1]=p;
q=a[i];
a[i]=a[i+1];
a[i+1]=q;
}
}
}
cout<<"按男团总分从大到小排序,以及对应的院系编号为:"< for(j=0;j {
cout< }
cout< for(j=0;j {
cout< }
cout<}
void gamescore::sort3()//按女团总分排序
{
int p,q;
int a[MAX];
for(int i=0;i {
a[i]=i+1;
}
for(int j=0;j {
for(i=0;i<=n-1-j;i++)
{
if(womentotalscore[i] {
p=womentotalscore[i];
womentotalscore[i]=womentotalscore[i+1];
womentotalscore[i+1]=p;
q=a[i];
a[i]=a[i+1];
a[i+1]=q;
}
}
}
cout<<"按女团总分从大到小排序,以及对应的院系编号为:"< for(j=0;j {
cout< }
cout< for(j=0;j {
cout< }
cout<}

void gamescore::search(int academynum,int projectnum)
{int j;
int k;
do
{
cout<<"1 查询该院该单项成绩的总分, 2 查询该院总分,,3 查询该院男团总分,4 查询该院女团总分,5 按项目编号查询,0 退出查询"< cout<<"请选择:";
cin>>k;
if(k<0||k>5) //判断输入的操作编号是否在目录中,如果超出范围重新输入
{
cout<<"输入有误,请重新输入要操作的项目编号";
cin>>k;
}
switch(k)
{
case 1:
cout<<"编号为"< cout< case 2:
cout<<"该院总分为:"< case 3:
cout<<"该院男团总分为:"< case 4:
cout<<"该院女团总分:"< case 5:
cout<<"不同院系对应的第"< for(j=0;j {
cout<<1+j< }
cout< for(j=0;j {
cout< }
cout< break;

default: return;
}

}while(1);
}
void gamescore::repair(int academynum,int projectnum)
{
cout<<"请重新输入该项成绩:";
cin>>score[academynum-1][projectnum-1];
cout<<"修改成功"<}
void gamescore::remove(int academynum,int projectnum)
{
score[academynum-1][projectnum-1]=0;
cout<<"!!删除成功"<}
void gamescore::output1(int academynum)
{
//cout<<"该学院运动项目编号及对应的成绩如下:"< for(int i=0;i {
cout<<1+i< }
cout< for(i=0;i {
cout< }
}
void gamescore::output2(int academynum)
{
cout<<"该院男团成绩为"< cout<<"该院女团成绩为"<}

/////////////////////////////////////////////////////
void main()
{
int projectnum;
int academynum;
gamescore a;
int num;
////////////////////////////////////////////菜单
cout<<" ****广东海洋大学运动会成绩管理系统****"< cout< cout<<" **********************************************"< cout<<" ** 1 输入院系及其参加项目的成绩 **"< cout<<" ** 2 查询某个院系参加某个项目的成绩 **"< cout<<" ** 3 修改一个项目的成绩 **"< cout<<" ** 4 删除错误成绩的记录 **"< cout<<" ** 5 输出某个院系的得分表 **"< cout<<" ** 6 输出院系的团体得分表 **"< cout<<" ** 7 对成绩按院系进行排序 **"< cout<<" ** 8 对成绩按男团进行排序 **"< cout<<" ** 9 对成绩按女团进行排序 **"< cout<<" ** 10 保存成绩信息 **"< cout<<" ** 0 退出该程序 **"< cout<<" **********************************************"< cout<<" 输入参加院系数 n=";
cin>>n;
cout<<" 输入男子项目数 m=";
cin>>m;
cout<<" 输入女子项目数 w=";
cin>>w;

do{
cout<<"请选择要操作的菜单标号:";
cin>>num;
if(num>10||num<0)
{
cout<<"输入有误,请重新输入要操作的项目编号:";
cin>>num;
}
switch(num)
{
case 1:
a.input();
break;
case 2:
cout<<"输入要查找的院系:";
cin>>academynum;
cout<<"输入要查询的运动项目编号:";
cin>>projectnum;
a.search(academynum,projectnum);
break;
case 3:
cout<<"输入要修改的院系编号";
cin>>academynum;
cout<<"输入要修改的运动项目的编号:";
cin>>projectnum;
a.repair(academynum,projectnum);
break;
case 4:
cout<<"输入要删除成绩所在的院系的编号:";
cin>>academynum;
cout<<"输入要删除运动项目编号:";
cin>>projectnum;
a.remove(academynum,projectnum);
break;
case 5:
cout<<"输入要查询成绩的院系编号:";
cin>>academynum;
a.output1(academynum);
break;
case 6:
cout<<"输入要查询团体成绩的院系的编号:";
cin>>academynum;
a.output2(academynum);
break;
case 7:
cout<<"该学院运动项目编号及对应学院总分的成绩如下:";
a.hold();
a.sort1();break;
case 8:
cout<<"该学院运动项目编号及对应男团的成绩如下:";
a.hold();
a.sort2();break;
case 9:
cout<<"该学院运动项目编号及对应女团的成绩如下:";
a.hold();
a.sort3();break;
case 10:
a.save();
cout<<"!!保存成功"< default: return;
}
}while(1);
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持无名。

C++实现校园运动会报名系统
C++学校运动会管理系统的实现

同类资源