[Error] too many initializers for 'Teacher'?????

#include
#include
using namespace std;

struct Student
{

string name;
int score;

};

struct Teacher
{

string name;
int age;
struct Student;

};

int main()
{

struct Student s1[5]={
        {"小一",100},
        {"小二",99},
        {"小三",98},
        {"小四",94},
        {"小五",95},
    };
    struct Student s2[5]={
        {"小六",96},
        {"小7",97},
        {"小8",98},
        {"小9",90},
        {"10",91},
    };
    struct Student s3[5]={
        {"11",88},
        {"12",87},
        {"13",78},
        {"14",98},
        {"15",91},
    };
        struct Teacher t[3]
{
    {"老王",30,s1},
    {"老李",40,s2},
    {"老张",50,s3},
};

}

teacher里面
struct Student;
->
struct Student * arr;