代码基本上没什么问题,修改的部分代码如下:
for(i=0;i<3;i++)
{
printf("请输入第%d个程序员的信息:",i+1);
printf("姓名:");
gets(z[i].name);
printf("年龄:");
scanf("%d",&z[i].age);
printf("工资:");
scanf("%d",&z[i].pay);
fflush(stdin);
}
scanf("%d",z[i].pay);
语法没错误
第一,你在最后的输入工资时scanf要加取地址符&
第二,你的后两个name存进去的不是你输入的名字,而是输入前一个工资时会键入回车符,他把这个回车符存进去了