那位高手帮帮我看看这个程序有什么问题

来源:百度知道 编辑:UC知道 时间:2024/06/22 03:53:48
这只是一个程序的一部分,是用指针排序的问题。
sort(struct struct_name *p)
{
struct struct_name temp *p1;
int i,j;
for(i=0;i<30;i++)
{
p1=p+1;
for(j=i+1;j<30;j++)
if(p->score<p1->scoe)
{
temp.score=p1->score;strcpy(temp.name,p1->name);
p1->score=p->score;strcpy(p1->name,p->name);
p->score=temp.score;strcpy(p->name,temp.name);
}
p1++;
};
p++;
};

struct struct_name *temp *p1,不同类型怎么能互相赋值,如果是指针就都是指针,否则就都不是

sort(struct struct_name *p)
{
struct struct_name temp,*p1;
int i,j;
for(i=0;i<30;i++)
{
p1=p + i + 1;
for(j=i+1;j<30;j++,p1++ )
if(p->score<p1->scoe)
{
temp.score=p1->score;strcpy(temp.name,p1->name);
p1->score=p->score;strcpy(p1->name,p->name);
p->score=temp.score;strcpy(p->name,temp.name);
}
p++;
};
};