生成3位老师和学生的成绩信息
#include <iostream>
#include <string>
#include <ctime>
using namespace std;
struct Student
{
// 学生姓名
std::string sName;
// 学生分数
int score;
};
struct Teacher
{
// 老师姓名
std::string tName;
// 学生列表
struct Student sArray[5];
};
void allocateSpace(struct Teacher *tArray, int len)
{
std::string nameSeed = "ABCDE";
for (int i = 0; i < len; i++)
{
tArray->tName = "Teacher_";
tArray->tName += nameSeed[i];
for (int j = 0; j < 5; j++)
{
tArray->sArray[j].sName = "Student_";
tArray->sArray[j].sName += nameSeed[j];
// 40 - 100
int score = rand() % 61 + 40;
tArray->sArray[j].score = score;
}
// 指针++,寻找下一个Teacher地址
tArray++;
}
}
void printInfo(struct Teacher *tArray, int len)
{
for (int i = 0; i < len; i++)
{
std::cout << "老师姓名: " << tArray->tName << std::endl;
for (int j = 0; j < 5; j++)
{
struct Student s = tArray->sArray[j];
std::cout << "\t 学生姓名: " << s.sName
<< "学生分数: " << s.score << std::endl;
}
tArray++;
}
}
int main()
{
// 初始化随机数种子
srand((unsigned int)time(NULL));
struct Teacher tArray[3];
int len = sizeof(tArray) / sizeof(tArray[0]);
allocateSpace(tArray, len);
printInfo(tArray, len);
getchar();
return 0;
}
程序输出
图片.png
网友评论