//例题实践
#include <iostream>
#include <ctime>//随机头文件
using namespace std;

struct xuesheng {
    string name;
    int age;
};
struct laoshi {
    string name;
    //学生结构体引用
    struct xuesheng xueshengs[5];
};

void fuzhi(struct laoshi laoshis[], int len) {
    //开始赋值
    string seed = "ABCDE";//老师名称
    for (int i = 0; i < len; i++) {
        laoshis[i].name = "laoshi_";
        laoshis[i].name = laoshis[i].name + seed[i];//将大写字母拼接到名字后
        //开始学生赋值
        for (int j = 0; j < 5; j++) {
            //学生姓名
            laoshis[i].xueshengs[j].name = "xuesheng_";
            laoshis[i].xueshengs[j].name = laoshis[i].xueshengs[j].name + seed[j];

            //学生成绩赋值
            int suiji = rand() % 61 + 40;//创建随机数 40~100;
            laoshis[i].xueshengs[j].age = suiji;
        }
    }
}
void dayin(struct laoshi laoshis[], int len) {
    //遍历打印
    for (int i = 0; i < len; i++) {
        cout << "老师姓名:" << laoshis[i].name << endl;
        //打印学生
        for (int j = 0; j < 5; j++) {
            cout << " \t学生姓名:" << laoshis[i].xueshengs[j].name <<
                " 考试分数:" << laoshis[i].xueshengs[j].age << endl;
        }
    }
}
int main() {
    //创建随机种子
    srand((unsigned int)time(NULL));
    //创建老师数组
    laoshi laoshis[3];
    //创建学生数组;
    //xuesheng xueshengs[5];
    int len = sizeof(laoshis) / sizeof(laoshis[0]);//计算数组长度;
    fuzhi(laoshis, len);
    //打印信息
    dayin(laoshis, len);
}

本代码主要是练习结构体与循环,自定义函数等的内容,实例的功能为打印老师下面的学生的成绩。