标题:偶有问题请教!
取消只看楼主
jmyp
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2007-5-1
 问题点数:0 回复次数:2 
偶有问题请教!
请那位有时间了给我指点迷津吧,偶将不胜感激哦!

有一组学生的信息
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;
}
}
}
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>

</script>
1 mary 19 90
2 jack 23 87
3 lily 21 85
0 tom 20 95
搜索更多相关主题的帖子: 不胜感激 color 信息 
2007-05-10 15:20
jmyp
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2007-5-1
得分:0 
谢谢余来不厌其烦地指教哦!
2007-05-10 22:18
jmyp
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2007-5-1
得分:0 
modelmomo好厉害啊,这样我的程序可以简化许多了,而且更加清晰易懂了!
非常感谢!
向您学习!
2007-05-13 15:16



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-138254-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.399698 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved