struct emp{ int num; char name[10]; float jbgz,jt,jj,zc; }; struct emp s[10];为啥要写struct emp s[10];

#include<stdio.h>
int main(void)
{
struct emp{
int num;
char name[10];
float jbgz,jt,jj,zc;
};
struct emp s[10];
int i,n;
printf("n=");
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%s4个%f ",s[i].name,&s[i].jbgz,&s[i].jt,&s[i].jj,&s[i].zc);
for(i=0;i<n;i++)
printf("%s:%.2f\n",s[i].name,s[i].jbgz+s[i].jt+s[i].jj-s[i].zc);
return 0;
}

struct emp s[10]是一个结构体数组,里面的每个元素都是你定义的struct emp结构体,定义这个数组可以存放10个struct emp结构体元素
1.struct emp 是你这个数组的类型
2.s是你定义的数组名
3.数组里面有10个元素