typedef struct {
char name[30];
int event_score[7];
}ElemType;
typedef struct{
ElemType Element[20];
int Length;
}SeqList;
void Sort_SeqList(SeqList *L_pointer)
{
int i,j;
int max;
ElemType temp;
for(i=0;i<L_pointer->Length;i++)
{
max=i;
for(j=i+1;j<=L_pointer->Length;j++)
if(L_pointer->Element[i].event_score[6]<\
L_pointer->Element[j].event_score[6])
max=j;
if(max!=i)
{
temp=L_pointer->Element[max];
L_pointer->Element[max]=L_pointer->Element[j];
L_pointer->Element[j]=temp;
}
}
}
麻烦高手们帮我瞧瞧.为什么这个排序的函数编译时查不出问题,运行时的结果却和预期的不一样呢?最好帮我详细解释一下.是不是结构体不能用赋值号赋值的原因?如果是.那要怎么实现排序功能呢?谢谢!
最大为20.但不一定.因为这是按输入数据的个数来算的.内层循环的Length不是数组.只是普通变量,我想用的冒泡法排序.这样子没错吧?
内层循环我改了.结果也不对.三楼的仁兄,既然不能用等号赋值.我想排序应该怎么办啊?麻烦你指点一二.
三楼的仁兄!谢谢了.问题解决.也谢谢一楼二楼的帮助.谢谢.