第一阶段比赛:
十二个编号为10001~10012的人员抽取随机上场顺序,分为两组进行,由十个评委分别进行打分(随机),通过除去最低分和最高分取均分的方式得到最终比分,每一组降序输出
第二阶段比赛:
由第一阶段比赛中每组前三名进入最终比赛,流程同上,角逐出前三名并保存到cls为后缀名的文件中
其他功能:
可查看历年比赛的结果,以及删除所有记录
Person.h
#pragma once
#include<iostream>
#include<deque>
#include<string>
using namespace std;
class Person
{
public:
Person(int n,string s);
Person();
public:
int sno;//编号
string name;
float final_grade;//最终得分
};
Person.cpp
#include "Person.h"
#include<ctime>
Person::Person(int n,string s)
{
this->sno = n;
final_grade = 0;
this->name = s;
}
Person::Person()
{
this->sno = 0;
final_grade = 0;
this->name = "";
}
Speech.h
#pragma once
#include<iostream>
#include<string>
#include"Person.h"
#include<algorithm>
#include<numeric>
#include<vector>
#include<ctime>
#include<fstream>
#define FILE "file.cls"
using namespace std;
class Speech
{
public:
void Show();//主界面
void Linit();//给十二名选手分配编号
void randon();//抽签决定顺序
void first_competition();//第一轮比赛
void caculate();//打分并计分
void success(string x);//晋级名单
void print(vector<Person> p);//打印
void second_competition();//第二轮比赛开始
void save();//保存到文件中
bool look_file();//探查文件状况
void Read();//读记录
void clean();//清空比赛记录
void Exit();//退出比赛程序
public:
vector<Person> person;
};
Speech.cpp
#include "Speech.h"
void Speech::Show()
{
cout << "************************************" << endl;
cout << "******欢迎使用演讲比赛流程系统******" << endl;
cout << "**********1.开始演讲比赛************" << endl;
cout << "**********2.查看往届记录************" << endl;
cout << "**********3.清空比赛记录************" << endl;
cout << "**********4.退出比赛系统************" << endl;
cout << "************************************" << endl;
}
vo