前言:花三天时间帮朋友写的一个运动会分数统计的程序,每段代码都写上了注释方便理解,每个函数都单独负责一个功能模块,顺着看一遍就能明白了。但是由于考研长时间没碰过代码了,很多东西都遗忘了,所以读者可以自己再去优化一下代码。包括但不限于:
1、直接读取指定文本中的数据。
2、函数功能的内聚没有做到最好。
有任何问题欢迎评论区评论或者直接私信,我看到都会回复的。

文章目录

  • 题目:运动会分数统计
    • 要求
    • 界面要求
    • 存储结构
    • 测试数据
  • 完整代码(C)
  • 完整版(C++:2022.12.9 更新)

题目:运动会分数统计

参加运动会有 n n n 个学校,学校编号为 1 ∼ n 1 \sim n 1∼n。比赛分成 m m m 个男子项目,和 w w w 个女子项目,项目编号为 1 ∼ m + w 1 \sim m + w 1∼m+w。不同的项目取前五名前三名获得积分:取前五名分别为: 7 、 5 、 3 、 2 、 1 7、5、3、2、1 7、5、3、2、1;取前三名分别为: 5 、 3 、 2 5、3、2 5、3、2。哪些项目取前五名或前三名由用户自己设定。( 2 < = n < = 20 , 1 < = m + w < = 20 2 <= n <= 20,\ 1 <= m + w <= 20 2<=n<=20, 1<=m+w<=20)。分数相同时按编号大小输出。

要求

  1. 可以输入各个项目的前三名或前五名的成绩。
  2. 能统计各学校的积分总分。
  3. 数据存入文件并能随时查询。
  4. 可以按学校编号或名称、学核总分、男女生团体总分排序输出。
  5. 可以按学校编号查询学校某个项目的情况;也可以按项目编号查询取得前三或前五名的学较。

界面要求

有合理的提示,每个功能可以设立菜单。

存储结构

运动会的相关数据要存储在数据文牛中。

测试数据

3 5 5
篮球
铅球
跳远
百米赛跑
四人接力
羽毛球
乒乓球
跳水
4x100
跳远
咒术高专
85 85 90 100 100
85 85 95 100 100
调查兵团
90 100 100 85 85
90 100 90 85 85
鬼杀队
100 95 95 95 95
100 95 100 95 95

完整代码(C)

#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>typedef struct score    // 总分结构类型
{int schoolNum, boyEventNum, girlEventNum;   // 学校、男子、女子项目的数量char boyEvent[21][110], girlEvent[21][110]; // 男子、女子项目的名称int boyTop[21][6], girlTop[21][6];          // 这两个数组记录男、女子每个项目前三名或前五名的编号int flag;   // fasle == 0 表明分数还未统计过,需要统计
} ScoreInit;typedef struct school   // 学校的结构类型
{char name[110]; // 该学校名字int boyEventGrade[21], girlEventGrade[21];      // 该学校男子、女子项目的成绩int boyTotalScore, girlTotalScore, totalScore;  // 该学校男子、女子项目的总得分
} SchoolInit;// 全局变量定义
ScoreInit Score;                            // 分数结构变量
SchoolInit School[21];
int topThreeScore[4] = {-1, 5, 3, 2};       // 前三名的积分
int topFiveScore[6] = {-1, 7, 5, 3, 2, 1};  // 前五名的积分void Interface()    // 打印界面的函数 none
{printf("\t\t运动会积分统计\n\n");printf("1. 添加学校以及各项目成绩 \n");printf("2. 统计所有学校的得分结果 \n");printf("3. 按男子项目总分排序输出 \n");printf("4. 按女子项目总分排序输出 \n");printf("5. 按学校编号或名称排序输出 \n");printf("6. 按学校编号查询各项目得分 \n");printf("7. 按项目编号查询前三或前五 \n");printf("8. 保存信息 \n");printf("9. 清屏 \n");printf("10.退出 \n");
}void Clear()        // 该函数实现清屏的功能 none
{system("cls");Interface();
}void Init()     // 对数组相关数据初始化的函数
{Score.flag = 0;int i = 0, j, k;    // i, j, k, 用于标记循环次数while (i < 21)      // 对前几名数组初始化{j = 0;while (j < 6){Score.boyTop[i][j] = 0;Score.girlTop[i][j] = 0;++j;}++i;}i = 0;while (i < 21)      // 对 School 数组进行初始化{j = k = 0;while (j < 21)School[i].boyEventGrade[j++] = 0;while (k < 21)School[i].girlEventGrade[k++] = 0;School[i].boyTotalScore = School[i].girlTotalScore = School[i].totalScore = 0;++i;}
}void GetScoreData()     // 数据读取函数 none
{int i = 1, j, k;    // i, j, k, 用于标记循环次数printf("请依次输入学校、男子项目和女子项目的数量(均为至少三个):\n");scanf("%d%d%d", &Score.schoolNum, &Score.boyEventNum, &Score.girlEventNum);i = j = 1;printf("请依次输入男子项目、女子项目的名称(每个名称输入后需回车):\n");printf("男子项目:\n");while (i <= Score.boyEventNum)scanf("%s", Score.boyEvent[i++]);printf("\n女子项目:\n");while (j <= Score.girlEventNum)scanf("%s", Score.girlEvent[j++]);i = 1;printf("\n请依次输入各个学校的名称、男子项目的分数和女子项目的分数:\n");while (i <= Score.schoolNum){j = k = 1;scanf("%s", School[i].name);    // 输入学校的名称while (j <= Score.boyEventNum)  // 输入男子项目的分数scanf("%d", &School[i].boyEventGrade[j++]);while (k <= Score.girlEventNum) // 输入女子项目的分数scanf("%d", &School[i].girlEventGrade[k++]);printf("\n");++i;}getchar();printf("\n请输入任意键继续...");getchar();Clear(); // 由于输入的数据比较多,因为执行完输入函数后清一次屏
}void CountRank(int number, int topNum, int border, int sex) // number 是项目编号,topNum 代表前 topNum 名
{ // border 表示循环的边界值,sex 表示男子还是女子项目 noneint *A = (int*)malloc(sizeof(int) * border);    // 定义一个长度为 border 的数组,其中的元素是学校的编号for (int i = 1; i < border; ++i) A[i] = i;      // 给数组元素赋值if (sex == 0) // 如果是男子项目{int i, j;for (i = 2; i < border; ++i)    // 利用直接插入排序{   // 将 topNum 个成绩最好的学校的编号移到数组的最前面if (School[i].boyEventGrade[number] > School[i - 1].boyEventGrade[number]){A[0] = A[i];for (j = i - 1; A[0] > A[j]; --j)A[j + 1] = A[j];A[j + 1] = A[0];}}for (int i = 1; i <= topNum; ++i)   // 将前几名的编号赋值给 top 数组{Score.boyTop[number][i] = A[i];if (topNum == 3)    // 依照名次给各个学校添加总分School[A[i]].boyTotalScore += topThreeScore[i];elseSchool[A[i]].boyTotalScore += topFiveScore[i];}}else{int i, j;for (i = 2; i < border; ++i)    // 利用冒泡排序,只进行 topNum 趟排序{if (School[i].girlEventGrade[number] > School[i - 1].girlEventGrade[number]){A[0] = A[i];for (j = i - 1; A[0] > A[j]; --j)A[j + 1] = A[j];A[j + 1] = A[0];}}for (int i = 1; i <= topNum; ++i){Score.girlTop[number][i] = A[i];if (topNum == 3) // 依照名次给各个学校添加总分School[A[i]].girlTotalScore += topThreeScore[i];elseSchool[A[i]].girlTotalScore += topFiveScore[i];}}
}void CountTotalScore() // 各学校总分统计函数 none
{int topNum = 0;int i = 1, j = 1, k;printf("\n请依次输入各男子项目取前几名的成绩\n");while (i <= Score.boyEventNum){printf("%s:", Score.boyEvent[i]);scanf("%d", &topNum);CountRank(i, topNum, Score.schoolNum + 1, 0);++i;}printf("\n请依次输入各女子项目取前几名的成绩\n");while (j <= Score.girlEventNum){printf("%s:", Score.girlEvent[j]);scanf("%d", &topNum);CountRank(j, topNum, Score.schoolNum + 1, 1);++j;}Score.flag = 1;
}void EventTotalScoreSort(int sex) // 该函数实现按照各学校的总分进行排序
{int *A = (int*)malloc(sizeof(int) * (Score.schoolNum + 1)); // 定义一个长度为 Score.schoolNum + 1 的数组,其中的元素是学校的编号for (int i = 1; i <= Score.schoolNum; ++i) // 给数组元素赋值A[i] = i;if (sex == 0) // 如果是男子项目{int i, j;for (i = 2; i <= Score.schoolNum; ++i) // 直接插入排序{if (School[i].boyTotalScore > School[i - 1].boyTotalScore){A[0] = A[i];for (j = i - 1; A[0] > A[j]; --j)A[j + 1] = A[j];A[j + 1] = A[0];}}printf("男子项目总分排名是:\n");for (int i = 1; i <= Score.schoolNum; ++i)printf("%s\n", School[A[i]].name);}else{int i, j;for (i = 2; i <= Score.schoolNum; ++i) // 直接插入排序{if (School[i].girlTotalScore > School[i - 1].girlTotalScore){A[0] = A[i];for (j = i - 1; A[0] > A[j]; --j)A[j + 1] = A[j];A[j + 1] = A[0];}}printf("女子项目总分排名是:\n");for (int i = 1; i <= Score.schoolNum; ++i)printf("%s\n", School[A[i]].name);}
}
void SchoolNumberSort()
{printf("参赛的学校分别是:\n");for (int i = 1; i <= Score.schoolNum; ++i)printf("编号%d--%s\n", i, School[i].name);
}void SchoolQuery() // 该函数依据学校编号查询各项目成绩和总得分 none
{int number;printf("请输入需要查询的学校编号:");scanf("%d", &number);int i = 1, j = 1;printf("编号%d:%s\n", number, School[number]);printf("\n男子项目的成绩如下\n");while (i <= Score.boyEventNum){printf("%s:%d\n", Score.boyEvent[i], School[number].boyEventGrade[i]);++i;}printf("\n女子项目的成绩如下\n");while (j <= Score.girlEventNum){printf("%s:%d\n", Score.girlEvent[j], School[number].girlEventGrade[j]);++j;}printf("\n男子项目的总得分是:%d\n", School[number].boyTotalScore);printf("女子项目的总得分是:%d\n", School[number].girlTotalScore);
}void EventQuery() // 该函数依据项目的编号查询各学校的成绩排名 none
{if (Score.flag){int number;printf("请输入需要查询的项目编号:");scanf("%d", &number);printf("\n编号为%d的男子项目%s的排名分别是:", number, Score.boyEvent[number]);for (int i = 1; i < 6; ++i) // 依据 top 数组中记录的学校编号输出名字,前提是编号不为0if (Score.boyTop[i] != 0)printf("%s ", School[Score.boyTop[number][i]].name);printf("\n编号为%d的女子项目%s的排名分别是:", number, Score.girlEvent[number]);for (int i = 1; i < 6; ++i)if (Score.girlTop[i] != 0)printf("%s ", School[Score.girlTop[number][i]].name);printf("\n");}else printf("您还未查询过总分!\n");}void SaveData() // 该函数将数据存入文件 output.txt 中
{if (Score.flag){FILE *fp;fp = fopen("output.txt", "w"); // 令 fp 指向输出的文件// 先输出 Score 中的数据fprintf(fp, "学校数量:%d   男子项目数量:%d   女子项目的数量:%d\n", Score.schoolNum, Score.boyEventNum, Score.girlEventNum);fprintf(fp, "男子项目有:");for (int i = 1; i <= Score.boyEventNum; ++i)fprintf(fp, "%s ", Score.boyEvent[i]);fprintf(fp, "\n");fprintf(fp, "女子项目有:");for (int i = 1; i <= Score.girlEventNum; ++i)fprintf(fp, "%s ", Score.girlEvent[i]);fprintf(fp, "\n\n");// 然后按学校顺序输出相关数据for (int i = 1; i <= Score.schoolNum; ++i){fprintf(fp, "编号%d-%s\n", i, School[i].name); // 输出学校名称fprintf(fp, "男子项目成绩为:");for (int j = 1; j <= Score.schoolNum; ++j)fprintf(fp, "%d ", School[i].boyEventGrade[j]);fprintf(fp, "\n女子项目成绩为:");for (int j = 1; j <= Score.schoolNum; ++j)fprintf(fp, "%d ", School[i].girlEventGrade[j]);fprintf(fp, "\n男子项目总得分为:%d\n女子项目总得分为:%d\n\n", School[i].boyTotalScore, School[i].girlTotalScore);}fclose(fp);printf("文件写入完成!\n");system("output.txt"); // 打开 output.txt 文件}else printf("还没统计分数呢!\n");
}void Exit() // none
{exit(0);
}int main()
{Interface(); // 打印界面的函数Init(); // 调用初始化函数int choice = 0;while (1){printf("\n请输入您的选择(1-10):\n");scanf("%d", &choice);if (choice < 1 || choice > 10)printf("输入非法!请重新输入!\n");switch(choice) // 根据用户输入进入不同的模块{case 1:GetScoreData();break;case 2:CountTotalScore();break;case 3:EventTotalScoreSort(0);break;case 4:EventTotalScoreSort(1);break;case 5:SchoolNumberSort();break;case 6:SchoolQuery();break;case 7:EventQuery();break;case 8:SaveData();break;case 9:Clear();break;case 10:Exit();}}
}

完整版(C++:2022.12.9 更新)

#include <iostream>
#include <vector>
#include <algorithm>
#include <windows.h>
#include <fstream>
using namespace std;struct sport    // 运动会信息结构体
{// 学校数量,男子项目数量,女子项目数量,项目总数,flag = 0 表明分数尚未统计int schoolsNum, menEventsNum, womenEventsNum, eventsTotalNum, flag = 0;vector<string> menEventsname, womenEventsname;      // 男子项目名称数组,女子项目名称数组
} Sports;struct school   // 学校信息结构体
{string name;                        // 学校名称int menScore, womenScore, number;   // 学校男子项目得分、女子项目得分、学校编号
};struct event    // 比赛项目信息结构体
{vector<pair<int, int>> numGrade;    // grade 保存该项目所有学校的编号成绩数组string name;                        // 项目名称int number;                         // 项目编号
};vector<school> Schools;
vector<event> Events;
int topThreeScore[4] = { 5, 3, 2 };       // 前三名的积分
int topFiveScore[6] = { 7, 5, 3, 2, 1 };  // 前五名的积分void Interface()    // 该函数用于打印程序的菜单界面
{cout << "\t运动会分数统计" << endl;cout << "1. 添加学校以及各项目成绩" << endl;cout << "2. 统计所有学校的得分结果" << endl;cout << "3. 按男子项目总分排序输出" << endl;cout << "4. 按女子项目总分排序输出" << endl;cout << "5. 按学校的编号和名称输出" << endl;cout << "6. 按学校编号查询各项目成绩" << endl;cout << "7. 按项目编号查询前三或前五" << endl;cout << "8. 保存信息" << endl;cout << "9. 清屏" << endl;cout << "10.退出" << endl;
}void getSportsData()    // 该函数用于读取运动会以及参加运动会的学校的数据
{cout << "请依次输入学校、男子项目和女子项目的数量(数量至少三个):" << endl;cin >> Sports.schoolsNum >> Sports.menEventsNum >> Sports.womenEventsNum;Sports.eventsTotalNum = Sports.menEventsNum + Sports.womenEventsNum;cout << "请依次输入男子项目和女子项目的名称:" << endl;for (int i = 0; i < Sports.eventsTotalNum; ++i){event temp;                                     // temp 结构变量保存当前输入项目的数据cin >> temp.name;                               // 输入项目名称temp.number = i + 1;                            // 项目编号比循环下标大1Events.push_back(temp);                         // 存入所有项目的数组中}int grade;                                          // grade 保存输入的成绩cout << "\n请依次输入各个学校的名称、男子项目的分数和女子项目的分数:" << endl;for (int i = 0; i < Sports.schoolsNum; ++i)         // 循环枚举所有学校{school temp;                                    // temp 结构变量保存当前输入学校的数据cin >> temp.name;                               // 学校名称temp.number = i + 1;                            // 学校编号比循环下标大1for (int j = 0; j < Sports.eventsTotalNum; ++j){   // 循环枚举所有项目,以学校编号和成绩作为一个 pair 存入项目中cin >> grade;Events[j].numGrade.push_back(make_pair(temp.number, grade));}temp.menScore = temp.womenScore = 0;            // 初始化该学校的积分为0Schools.push_back(temp);                        // 该学校存入参加运动会的学校数组中}getchar();                                          // 过滤输入完数据的回车cout << "\n输入成功!" << endl;
}bool compareGrade(pair<int, int> a, pair<int, int> b)    // 谓词:将成绩更高的排在前面
{return a.second > b.second;
}void countTotalScore()  // 该函数用于统计所有学校的积分
{if (Sports.flag == 0)   // 尚未统计过分数,统计一下{int topNum = 0;cout << "\n请依次输入各男子项目和女子项目取前几名的成绩(3或5)" << endl;for (int i = 0; i < Sports.eventsTotalNum; ++i){   // 循环枚举所有项目if (i < Sports.menEventsNum) cout << "男子项目";else cout << "女子项目";cout << Events[i].number << "-" << Events[i].name << ": ";int flag = 0;   // flag = 1 表明输入合法,注意将其与 Sports 中的 flag 区分开do { // 该循环检测输入的是否为合法数据,不是的话会让用户重新输入cin >> topNum;if (topNum > Sports.schoolsNum || (topNum != 3 && topNum != 5)){   // 输入的数字必须比参赛学校数小且不能是除了3和5以外的数字cout << "请输入正确数据:";flag = 0;}else flag = 1;} while (flag == 0);// 将项目中的编号成绩数组的元素按照成绩由高到低排序sort(Events[i].numGrade.begin(), Events[i].numGrade.end(), compareGrade);for (int j = 0; j < topNum; ++j){   // 循环枚举前 j 名int num = Events[i].numGrade[j].first - 1;                  // 获取第 j 名学校的编号int sc = topNum == 3 ? topThreeScore[j] : topFiveScore[j];  // 获取该名次的积分if (i < Sports.menEventsNum) Schools[num].menScore += sc;   // 男子项目总得分更新else Schools[num].womenScore += sc;                         // 女子项目总得分更新}}Sports.flag = 1;cout << "统计成功!" << endl;}else cout << "已经统计过分数!" << endl;
}bool compareMan(school a, school b)     // 谓词:将男子项目总分更高的排在前面
{return a.menScore > b.menScore;
}bool compareWoman(school a, school b)   // 谓词:将女子项目总分更高的排在前面
{return a.womenScore > b.womenScore;
}void aggregateEventScore(int gender)    // 该函数根据项目总分排名打印学校编号和名称
{if (gender == 0){cout << "男子项目总分排名是:" << endl;sort(Schools.begin(), Schools.end(), compareMan);   // 对数组按男子项目总分进行排序for (auto i : Schools) cout << i.number << "-" << i.name << "\t分数:" << i.menScore << endl;}else{cout << "女子项目总分排名是:" << endl;sort(Schools.begin(), Schools.end(), compareWoman); // 对数组按女子项目总分进行排序for (auto i : Schools) cout << i.number << "-" << i.name << "\t分数:" << i.womenScore << endl;}
}bool compareSchoolNumber(school a, school b)    // 谓词:学校编号更小的排在前面
{return a.number < b.number;
}void schoolsNumberSort()    // 该函数打印所有参赛的学校和编号
{cout << "参赛的学校分别是:" << endl;sort(Schools.begin(), Schools.end(), compareSchoolNumber);    // 按学校编号由小到大排序for (auto i : Schools) cout << i.number << "-" << i.name <<endl;
}void schoolNumberQuery()    // 该函数根据学校编号打印其各项目成绩
{int num;cout << "请输入学校编号:";cin >> num;for (auto i : Schools)                                  // 遍历学校数组,找到编号为 num 的学校并打印其名称if (i.number == num) cout << num << "-" <<i.name << endl;cout << "\n男子项目成绩如下" << endl;for (int i = 0; i < Sports.menEventsNum; ++i){   // 枚举所有男子项目cout << Events[i].name << ": ";                     // 打印男子项目名称for (auto j : Events[i].numGrade)                   // 遍历该项目下的编号成绩数组if (j.first == num) cout << j.second << endl;   // 打印该项目的成绩}cout << "\n女子项目成绩如下" << endl;for (int i = Sports.menEventsNum; i < Sports.eventsTotalNum; ++i){   // 枚举所有女子项目cout << Events[i].name << ": ";                     // 打印女子项目名称for (auto j : Events[i].numGrade)                   // 遍历该项目下的编号成绩数组if (j.first == num) cout << j.second << endl;   // 打印该项目的成绩}
}void EventQuery()   // 该函数根据项目编号,按照成绩由大到小打印各学校名称
{int num;cout << "请输入项目编号:";cin >> num;cout << Events[num - 1].name << endl;                           // 注意编号要比其在数组中的下标大1// 将项目中的编号成绩数组的元素按照成绩由高到低排序sort(Events[num - 1].numGrade.begin(), Events[num - 1].numGrade.end(), compareGrade);sort(Schools.begin(), Schools.end(), compareSchoolNumber);      // 按学校编号由小到大排序for (auto i : Events[num - 1].numGrade)                         // 枚举指定项目的编号成绩数组cout << i.first << Schools[i.first - 1].name << " : " << i.second << endl;
}void saveData()
{char outPutFile[] = "Data.txt";//string outPutFile = "Data.txt";ofstream out(outPutFile);out << "男子项目数量:" << Sports.menEventsNum << endl;out << "男子项目有:" << endl;for (int i = 0; i < Sports.menEventsNum; ++i) out << Events[i].number << "-" << Events[i].name << endl;out << "\n女子项目数量:" << Sports.womenEventsNum << endl;out << "女子项目有:" << endl;for (int i = Sports.menEventsNum; i < Sports.eventsTotalNum; ++i) out << Events[i].number << "-" << Events[i].name << endl;out << "\n学校数量:" << Sports.schoolsNum << endl;sort(Schools.begin(), Schools.end(), compareSchoolNumber);      // 按学校编号由小到大排序for (auto i : Schools)                                          // 枚举每个学校 i{out << i.number << "-" << i.name << endl;                   // 打印学校编号和名称for (auto j : Events)                                       // 枚举每个项目 j{out << j.number << "-" <<j.name << ":";                // 打印项目编号和名称for (auto k : j.numGrade)                               // 枚举项目 j 下的编号成绩数组if (k.first == i.number) out << k.second << endl;   // 打印该项目的成绩}out << "男子项目总得分:" << i.menScore << endl;out << "女子项目总得分:" << i.womenScore << endl;out << endl;}out.close();        // 需要先关闭文件后才能打开并显示文本文件cout << "保存成功!" << endl;system(outPutFile);
}void clearScreen()      // 该函数实现清屏
{cout << "清除成功!等待界面刷新..." << endl;Sleep(1000);system("cls");Interface();
}void exitProcedure()    // 该函数结束程序执行
{exit(0);
}int main()
{Interface();int choice;while (1){cout << "\n请输入您的选择(1-10):";cin >> choice;if (choice < 1 || choice > 10)cout << "输入非法!请重新输入!" << endl;switch (choice) // 根据用户输入进入不同的模块{case 1:getSportsData();break;case 2:countTotalScore();break;case 3:aggregateEventScore(0);break;case 4:aggregateEventScore(1);break;case 5:schoolsNumberSort();break;case 6:schoolNumberQuery();break;case 7:EventQuery();break;case 8:saveData();break;case 9:clearScreen();break;case 10:exitProcedure();}}return 0;
}

希望本篇博客能对你有所帮助,也希望看官能动动小手点个赞哟~~。

运动会分数、积分统计程序相关推荐

  1. c语言编程运动会分数统计系统报告,独家稿件:定稿运动会分数统计系统设计报告_完整版...

    <运动会分数统计系统设计报告_.doc>由会员分享,可免费在线阅读全文,更多与<(定稿)运动会分数统计系统设计报告_(完整版)>相关文档资源请在帮帮文库(www.woc88.c ...

  2. c语言编程运动会分数统计系统,东华大学数据结构设计C语言运动会分数统计系统...

    东华大学数据结构设计C语言运动会分数统计系统 东华大学数据结构设计 C 语言运动会分数统计系统东华大学数据结构课程设计 实验报告实验名称: 运动会分数统计系统指导教师:学生姓名:学生学号:实验日期:1 ...

  3. 数据结构实训——运动会分数统计

    题目1: 运动会分数统计(限1 人完成) 任务: 参加运动会有n个学校,学校编号为1--n.比赛分成m个男子项目,和w个女子项目.项目编号为男子1--m,女子m+1--m+w.不同的项目取前五名或前三 ...

  4. 详解数据结构课程设计———运动会分数统计

    题目一:运动会分数统计 问题描述:参加运动会有n个学校,学校编号为1--n.比赛分成m个男子项目,和w个女子项目.项目编号为男子1--m,女子m+1--m+w. 不同的项目取前五名或前三名积分:取前五 ...

  5. 运动会分数统计的实验报告(数组实现)

    运动会分数统计的实验报告(数组实现) 有n个学校参加运动会,学校名对应的编号为1--n.比赛分成m个男子项目,和w个女子项目.每个项目取前三名积分,前三名的积分分别为:5.3.2:数据可以存储在一个数 ...

  6. 运动会分数统计(数据结构课程设计)

    参加运动会有n个学校,学校编号为1--n.比赛分成m个男子项目,和w个女子项目.项目编号为男子1--m,女子m+1--m+w.不同的项目取前五名或前三名积分:取前五名的积分分别为:7.5.3.2.1, ...

  7. 运动会分数统计系统c语言,运动会分数统计系统

    <运动会分数统计系统>由会员分享,可在线阅读,更多相关<运动会分数统计系统(18页珍藏版)>请在人人文库网上搜索. 1.运动会分数统计系统罗慧明1. 需求分析为了简便地对运动会 ...

  8. 运动会分数统计 C语言

    问题描述 参加运动会有n个学校,学校编号为1~n.比赛分为m个男子项目,和w个女子项目.项目编号为男子1~m,女子m+1~m+w.不同的项目取前五名或前三名积分.取前五名的积分分别为:7.5.3.2. ...

  9. 数据结构实训-运动会分数统计

    任务:参加运动会有n个学校,学校编号为1--n.比赛分成m个男子项目,和w个女子项目.项目编号为男子1--m,女子m+1--m+w.不同的项目取前五名或前三名积分:取前五名的积分分别为:7.5.3.2 ...

最新文章

  1. java jdk 8u111_8u111-jdk-alpine在java开发中的NullPointerException错误解决方案
  2. 芯片是怎么制造的?为什么那么难?
  3. caffe学习(二):利用mnist数据集训练并进行手写数字识别(windows)
  4. core identity mysql_Asp.Net Core Identity 4 改成 MySql/MariaDB
  5. ABAP数据库—更新数据
  6. 【深度学习】基础知识--CNN:图像分类(上)
  7. Eureka简介与Eureka Server上
  8. Python基础(十)--文件相关
  9. 20行Python代码检测人脸是否佩戴口罩
  10. 发力金融市场,中兴通讯有何硬实力?
  11. laravel queue java_使用 Laravel Queue 不得不明白的知识
  12. 单片机零基础入门(8-5)模块化编程
  13. 第五节:蜂鸣器的驱动程序
  14. STM32——C语言基础
  15. 国家电网一二次融合配电终端(FTU)发展新方向馈线自动化:具备集中型馈线自动化/就地型馈线自动化包括电压时间型、电压电流型、自适应综合型)及零序电流,零序电压或外施信号法的单相接地故障选线功能
  16. 麻省理工大学教授教你怎样做…
  17. android onCreate与onCreateView的区别
  18. 服务器制作raid,实战案例——服务器制作raid磁盘阵列并管理
  19. flask 调用python脚本_flaskpython脚本如何调用另一个flaskpython脚本
  20. 修改node.js全局依赖包的安装路径

热门文章

  1. leetcode+双指针求最大容积,思维。一左一右指针
  2. 反射机制原理-小白必经之路
  3. 1213: 不吉利的数字
  4. js使用canvas拼接图片
  5. 视频播放器 之vueplayer和flv.js
  6. 施耐德电气尹正:智能制造始于IT赋能OT
  7. 软件实训-技术学习心得
  8. 分解质因数(python)
  9. Notepad++ Emmet执行时提示R6034 Runtime Error, 错误的解决方法
  10. 谷歌「我不是机器人」按钮隐藏了,但你的隐私暴露了