编程中遇到的问题 帮忙看看下面哪里错了
//7定义一个排序函数struct student *sort(struct student *h)
{
int i,j,k;
struct student *p1,*p2,*p3;
printf("请选择排序方式1按学号排序2按总分排序\n");
scanf("%d",&j);getchar();
if(j==1)
{ p1=h;
p2=p1->next;
for(i=0;i<n-1;i++)
{
for(k=0;k<n-i-1;k++)
{
if(p1->num>p2->num)
{p3=p1;
p1=p2;
p2=p3;
}
p1=p1->next;
p2=p1->next;
}
}
}
head=p1;
return(head); }