前言:花三天时间帮朋友写的一个运动会分数统计的程序,每段代码都写上了注释方便理解,每个函数都单独负责一个功能模块,顺着看一遍就能明白了。但是由于考研长时间没碰过代码了,很多东西都遗忘了,所以读者可以自己再去优化一下代码。包括但不限于:
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. 用户界面设计十大基本原则
  2. okhttp配置缓存策略_网站的缓存控制策略最佳实践及注意事项
  3. pip install python-docx报错_python各种模块的安装
  4. zabbix添加URL监控
  5. 【模板】折线分割平面
  6. openwrt satisfy_dependencies_for: Cannot satisfy the following dependencies for kmod: * 问题解决
  7. python输出列/行内容显示不全
  8. 从头开始敲代码之《从BaseApplication/Activity开始(二)》
  9. Linux文件操作实用笔记
  10. python实现共空间模式CSP
  11. linux查看当前igb的版本信息,Linux下查看网卡驱动和版本信息
  12. 电商:购物车模块解决思路
  13. 十六、算术编码_1、基本原理与实现
  14. 基于python的管理系统_基于ssm的管理系统_基于python管理系统
  15. 0days最好的破解网站
  16. keil错误提示Error: L6218E: Undefined symbol
  17. rust:读取并显示文本文件
  18. 数学文化赏析MOOC知识点归纳【2023】
  19. Windows上使用C#控制台应用程序打开指定路径的文件
  20. 黑莓的转型:如何成为一家网络安全公司?

热门文章

  1. 任务1 相关节目识别
  2. 【iOS开发】-UIViewController加载过程和生命周期
  3. 从Exe里面读取资源,给exe增加嵌入字体
  4. 互联网公司利用云闪付可以做什么?
  5. 右下角托盘广告消息弹窗?如邮件图标广告等通用解决方法
  6. 对接塔吉特Target DVS的EDI流程详解
  7. OI退役记,第一部分,现在和将来
  8. hacker(1)数据包分析
  9. 开发工具cfree安装报错解决
  10. tgz(tar.gz)的压缩和解压