scanf("%s",&(p+i)->name);这一句!!&(p+i)->name这个,返回的是一个数组指针,你用他去接受%s肯定出错.根据结果分析啊,自己学会调试,重复显示输出,说明输入缓冲区一次没读完,结果为负说明赋值有误,本来你全局变量应该为0,没初始化上,但是用t去赋值,t没输入上就是野生值.根据结果知道出错位置,,然后慢慢去找错误,,这么久了我想你也应该找到答案了吧.
15红包帮写或调试