关于#c语言#的问题:C语言用冒泡排序将学生成绩从小到大排序,这个算法我找不到哪里有错

问题描述:

C语言用冒泡排序将学生成绩从小到大排序,这个算法我找不到哪里有错,有人帮忙看看吗
void Bubblesort(seqlist *L)
{
int j,i;
int temp;
for(j=L->length-1;j>=0;j--)
{
for(i=0;i<j;i++)
{
if(L->data[i].score>L->data[i+1].score)
{
temp=L->data[i];
L->data[i]=L->data[i+1];
L->data[i+1]=temp;
}
}
}
for(i=0;ilength;i++)
{
printf("姓名%s,学号%d, 性别%s,电话%s,成绩%.1f\n",L->data[i].name,L->data[i].id,L->data[i].sex,L->data[i].phone,L->data[i].score);
}
printf("\n");
}
错误的地方大概是说'=' : incompatible types

temp 定义的是int 型, 链表的 L->data[i] 这个数据数组data[i]是什么类型,是否也是 int 型,还是一个结构体?如果 data[i] 是结构体,那这个temp也必须定义为同一结构体类型。