定义一个student的结构体,并创建一个结构体数组,并用下表数据对其初始化,请输出每个同学的信息。(姓名占15个宽度,其他数据占4个宽度,右对齐,每个数据占一行)。
Num Name Sex Score
101 Li ping M 45
102 Zhang ping M 62
103 He fang F 92
104 Cheng ling F 87
105 Wang ming M 58
哪里错了啊
#include
struct student
{
char num[4];
char name[15];
char sex;
int score;
};
int main()
{
struct student stu[]=
{
{"101","Li ping",'M',45},
{"102","Zhang ping",'M',62},
{"103","He fang",'F',92},
{"104","Cheng ling",'F',87},
{"105","Wang ming",'M',58}
};
printf("%4s15%s%4c%4d\n",stu.num,stu.name,stu.sex,stu.score);
}
访问学生信息结构数组时没有使用下标来访问这里错了,加上下标访问结构数组的信息即可,修改如下:
#include <stdio.h>
struct student
{
char num[4];
char name[15];
char sex;
int score;
};
int main()
{
struct student stu[]=
{
{"101","Li ping",'M',45},
{"102","Zhang ping",'M',62},
{"103","He fang",'F',92},
{"104","Cheng ling",'F',87},
{"105","Wang ming",'M',58}
};
int i;
for(i=0;i<5;i++){
printf("%4s%15s%4c%4d\n",stu[i].num,stu[i].name,stu[i].sex,stu[i].score);
}
}
你创的数组,需要用stu[i],即数组下标访问元素,你直接用数组名了