黑马程序员匠心之作|C++教程从0到1入门编程,学习编程不再难

结构体案例1
#include <iostream>
#include <ctime>//利用时间实现随机
using namespace std;
struct student {
string name;
int age;
float score;
};
struct teacher {
string Tname;
struct student Sarray[5];
};
void AssignName(struct teacher Tarray[], int len) {//给老师和学生赋值的函数
string NameSeed = "ABCDE";
//给老师开始赋值
for (int i = 0; i < len; i++) {
Tarray[i].Tname = "Teacher_";
Tarray[i].Tname += NameSeed[i];
//通过循环给每名老师带的学生赋值
for (int j = 0; j < 5;j++) {
Tarray[i].Sarray[j].name = "student_";
Tarray[i].Sarray[j].name += NameSeed[j];
int random = rand() % 61 + 40;//实现60-100随机生成
Tarray[i].Sarray[j].score = random;
Tarray[i].Sarray[j].age = 18;
}
}
}
//打印函数
void Print(struct teacher Tarray[], int len) {
for (int i = 0; i < len; i++) {
cout << "老师名:" << Tarray[i].Tname << endl;
for (int j = 0; j < 5; j++) {
cout << "\t学生名" << Tarray[i].Sarray[j].name << "年龄" << Tarray[i].Sarray[j].age << "分数" << Tarray[i].Sarray[j].score << endl;
}
}
}
int main() {
struct teacher Tarray[3];
int len = sizeof(Tarray) / sizeof(Tarray[0]);
//调用函数
AssignName(Tarray, len);
srand((unsigned int)time(NULL));//随机数种子
Print(Tarray, len);
system("pause");
return 0;
}