请看看代码的问题,急!

img


输出后分数是按顺序的,但是人名字还是原来的顺序,如何改进 111111111111

你要交换student,而不是只交换成绩啊。

student t;
t = *(p+j);
*(p+j) = *(p+j+1);
*(p+j+1) = t;

因为你没有交换名字呀,你交换名字的代码呢

你有一段代码是关于信息交换的,就是t的那三行,你把.name也同时换上,或者换的时候不要.score只用score判断

你在最后一个if里边,把那三行代码原封不动的copy一下,把.score换成.name就好了。
你只是把结构体中的分数做了交换,换汤不换药,所以输出的不是你要的结果