偶有问题请教!
请那位有时间了给我指点迷津吧,偶将不胜感激哦!有一组学生的信息
num name age score
0 mary 19 90
1 jack 23 87
2 lily 21 85
3 tom 20 95
当我按他们的成绩升序排序(我用的是冒泡排序法)后,他们的其它信息都跟着变了,就是说成绩 (score)与人名、年龄对不起来了;
num name age score
0 mary 19 95
1 jack 23 90
2 lily 21 87
3 tom 20 85
但如果我用下面方法按成绩排序,结果又明显不正确
for(i=0;i<3;++i)
{
for(j=1;j<4;++j)
{
int temp;
if(person[j-1].score<person[j]. score)
{
temp=person[j-1].num;
person[j-1].num=person[j]. num;
person[j].num=temp;
}
}
}
{
for(j=1;j<4;++j)
{
int temp;
if(person[j-1].score<person[j]. score)
{
temp=person[j-1].num;
person[j-1].num=person[j]. num;
person[j].num=temp;
}
}
}
num name age score
1 mary 19 90
0 jack 23 87
3 lily 21 85
2 tom 20 95
其实我想得到的结果是(排序后,name,age,score仍然是一一对应的)
num name age score
程序代码:
<SCRIPT>1 mary 19 90
</script>
2 jack 23 87
3 lily 21 85
0 tom 20 95