为什么多输出了点东西

img

这两个&符号去掉

img

  1. 能贴代码吗?发图片不好帮你调试,重写一遍你的代码很麻烦
  2. 有点想法,可能是你的输入输出出了问题,你输入27,是能被scanf识别到并存储,然后你后续的%s,scanf会因为你的逗号而分开吗?不会的,它会认为这是属于字符串的一部分,所以你存储到结构体里的应该是:num和name,你的另外两个并没有被存储进去,你也可以看你的输出结果验证,看似输出很多,其实还是只输出了三个,只是你的name存储了应该分给班级和分数的信息,所以输出name、class、score的时候,class和score由于在它两的地址里找不到信息,就输出了乱码,所以你的输出信息是:name、乱码、乱码,你可以把你的输入修改一下

你输入的第二行的88前面逗号是个全角字符