c++用代码实现学校运动会管理系统 - c++编程基础 - 编程开发
设为首页 加入收藏

TOP

c++用代码实现学校运动会管理系统(一)
2018-06-22 08:53:43 】 浏览:175
Tags:代码 实现 学校 运动会 管理系统

c++代码实现学校运动会管理系统

#include <iostream>  
#include <cstdio>  
#include <string>  
#include <windows.h>  
#include <set>  
#include <map>  
using namespace std;  
const int MAXN = 100005;  
typedef long long LL;  
map< pair<string, string>, int> mtable;//男生参赛成绩  
map< pair<string, string>, int> wtable;//女生参赛成绩  
multimap<string, string> parti;//学号对应参赛项目  
set <string> st;//有哪些学生学号  
map<string, int> mitem;//参加该项目的女学生数  
map<string, int> witem;//参加该项目的男学生数  
map<string, int> item;//项目数参加人数  
map<string, int> acad;//学院的总得分  
map<string, int> macad;//学院男生得分  
map<string, int> wacad;//学院女生得分  
int cnt;  
struct student  
{  
    string number;  
    string name;  
    string acad;  
    string sex;  
    int participate;  
} stu[MAXN];  
void menu()  
{  
    cout<<"**************系统菜单功能项*****************\n";  
    cout<<"1.运动会报名\n";  
    cout<<"2.参赛信息查询\n";  
    cout<<"3.竞赛检录\n";  
    cout<<"4.竞赛成绩录入\n";  
    cout<<"5.竞赛成绩查询\n";  
    cout<<"6.竞赛成绩排序\n";  
    cout<<"7.退出程序\n";  
    return ;  
}  
void apply()//报名  
{  
    system("cls");  
    string s1,s2,s3,s4,s5;  
    cout<<"请输入学生信息\n";  
    cout<<"请分别输入学生所属学院名,学生姓名,学生学号, 学生性别,学生参加的项目名\n";  
    cin>>s1>>s2>>s3>>s4>>s5;  
    if(st.find(s3)==st.end())  
    {  
        stu[cnt].acad=s1;  
        stu[cnt].name=s2;  
        stu[cnt].number=s3;  
        stu[cnt].sex=s4;  
        stu[cnt++].participate++;  
        st.insert(s3);  
    }  
    else  
    {  
        for(int i=0; i<cnt; ++i)  
        {  
            if(s3==stu[i].number)  
            {  
                if(stu[i].participate+1<=3)  
                    stu[i].participate++;  
                else  
                {  
                    printf("此学生已经报满3项,无法继续填报\n");  
                    return ;  
                }  
            }  
        }  
    }  
    parti.insert(make_pair(s3,s5));  
    acad.insert(make_pair(s1,0));  
    item[s5]++;  
    if(s4=="男")  
    {  
        mitem[s5]=mitem[s5]+1;  
        macad.insert(make_pair(s1,0));  
        mtable[pair<string, string>(s3,s5)]=0;  
    }  
    else  
    {  
        witem[s5]=witem[s5]+1;  
        wacad.insert(make_pair(s1,0));  
        wtable[pair<string, string>(s3,s5)]=0;  
    }  
    return ;  
}  
void query()//查询  
{  
    printf("信息查询的结果如下\n");  
    for(int i=0; i<cnt; ++i)  
    {  
        cout<<"学生学号"<<stu[i].number<<"  "<<"学生姓名"<<stu[i].name<<"  "<<"学生性别"<<stu[i].sex<<"  "<<"学生所属院系"<<stu[i].acad<<"  "<<"学生参加项目数"<<stu[i].participate<<endl;;  
        cout<<"同学姓名:"<<" "<<stu[i].name<<" "<<"参加了以下项目\n";  
        multimap<string,string>::iterator it=parti.begin();  
        for(; it!=parti.end(); it++)  
        {  
            if(it->first==stu[i].number)  
            {  
                cout<<it->second<<"  ";  
            }  
        }  
        cout<<"\n";  
    }  
    return ;  
}  
void registration()//检录  
{  
    system("cls");  
    cout<<"请输入即将检录的比赛项目名字"<<endl;  
    string s;  
    cin>>s;  
    cout<<"请一下同学前来检录"<<"\n";  
    int flag=0;  
    multimap<string, string>::iterator i
编程开发网
首页 上一页 1 2 3 下一页 尾页 1/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇C++数组的使用(代码实例) 下一篇C++求两数之和的示例教程

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

最新文章

热门文章

C 语言

C++基础

windows编程基础

linux编程基础

C/C++面试题目