我有一个作业,我应该在其中创建一个结构并且其中包含2个成员,ID和分数。我要为200名学生生成一个唯一的ID,每个学生的分数在1-100之间。之后,我打印出排序后的ID,按ID排序后,按照它们的Score版本排序。
我的问题是如何将ID从最小到最大排序,但同时保留分配给它的分数?如果我对ID进行排序,则得分保持不变。即使在分类后,我也需要给定的分数来匹配ID。
struct students
{
int studentID;
int studentScore;
};
int main()
{
// Local Variables
students studentInfo[200];
int counter = 0;
for(int i=0; i<200;i++)
{
HERE:
studentInfo[i].studentID = rand() % 500;
for(int k=0; k < counter; k++)
{
if(studentInfo[200].studentID == studentInfo[k].studentID)
{
goto HERE;
}
}
counter++;
}
for(int i=0; i<200;i++)
{
studentInfo[i].studentScore = rand() % 100;
}