printf(" age grade name\n");
for(i=0;i<6;i++){
printf("%3d%6d %8s\n",a[i].age,a[i].grade,a[i].name);
}
return 0;
}
直接copy 题主的代码有两个问题,第1个是中文的逗号,第2个是结构体中name,而不是nane,改好代码如下
#include<stdio.h>
#include<string.h>
struct ren
{
int age,grade;
char name[20];
};
int main(void)
{
int i;
struct ren a[6]=
{
{21,1,"Lucy"},{23,2,"Lily"},{20,1,"Bill"},
{20,2,"Nancy"}, {21,2,"Tom"},{20,3,"Peter"}
};
for(i=0; i<6; i++)
if(a[i].age==20&&a[i].grade==2)
strcpy(a[i].name,"Jane");
printf(" age grade name\n");
for(i=0; i<6; i++)
{
printf("%3d%6d %8s\n",a[i].age,a[i].grade,a[i].name);
}
return 0;
}