使用了随机数,结构体嵌套。
//结构体运用
//打印三个老师并各带五个学生name score
#include <iostream>
#include<ctime>
#include<cmath>
#include<string>
using namespace std;
struct student
{
string sname;
int score;
};
struct teacher
{
string tname;
struct student s[5];
};
void fz(teacher t[], int len)
{
int i, j;
string nameseed = "ABCDEF";
for (i = 0; i < len; i++)
{
t[i].tname = "Teacher_";
t[i].tname += nameseed[i];
for (j = 0; j < 5; j++)
{
t[i].s[j].sname = "Student_";
t[i].s[j].sname += nameseed[j];
int random = rand() % 100+1;//1~100
t[i].s[j].score = random;
}
}
}
void print(teacher t[],int len)
{
int i, j;
for (i = 0; i < len; i++)
{
cout << "|--------------------------------" << endl;
cout << "|老师姓名:" << t[i].tname <<endl;
for (j = 0; j < 5; j++)
{
cout << "|\t学生姓名:" << t[i].s[j].sname << endl;
cout << "|\t学生成绩:" << t[i].s[j].score << endl;
}
cout << "|--------------------------------" << endl;
}
}
int main()
{
//随机数种子
srand((unsigned int)time(NULL));
teacher t[3];
//赋值函数
int len = sizeof(t) / sizeof(t[0]);
fz(t,len);
//打印函数
print(t,len);
system("pause");
return 0;
}