如果有什么问题可以在评论区提出来,一起探讨。
案例1:
学校正在做毕设项目,每名老师带领五名学生,共有3名老师,需求如下:
设计老师和学生的结构体,其中在老师的结构体中,有老师姓名和一个存放5名学生的数组作为成员。学生的成员有姓名,考试分数,创建数组存放三名老师,通过函数给每个老师及所带的学生赋值,最终打印出来老师数据以及老师所带的学生数据。
#include#include #include #include using namespace std; struct student{ string s_name; int score; }; struct teacher{ string t_name; student arrS[5]; }; void assignment(teacher arrT[], int len){ string nameseed = "ABCDE"; for(int i = 0; i < 3; i++){ arrT[i].t_name = "teacher_"; arrT[i].t_name += nameseed[i]; for(int j = 0; j < 5; j++){ arrT[i].arrS[j].s_name = "student_"; arrT[i].arrS[j].s_name += nameseed[j]; int num = rand() % 101 + 1; arrT[i].arrS[j].score = num; } } } void printInfo(struct teacher arrT[], int len){ for(int i = 0; i < len; i++){ cout << "老师姓名 :" << arrT[i].t_name << endl; for(int j = 0; j < 5; j++){ cout << "t带领学生:" << arrT[i].arrS[j].s_name << " 考试分数:" << arrT[i].arrS[j].score << endl; } } } int main(){ srand((unsigned int)time(NULL)); teacher arrT[3]; int len = sizeof(arrT)/sizeof(arrT[0]); assignment(arrT, len); printInfo(arrT, len); return 0; }
案例2:
设计一个英雄结构体,包括成员姓名,年龄,性别创建结构体数组,数组中存放五个英雄,并通过冒泡排序的算法,将数组中的英雄按照年龄进行升序排列,最后打印排序后的结果。
#include#include using namespace std; struct Hero{ string name; int age; string sex; }; void bubbleSort(Hero arr[], int len){ for(int i = 0; i < len - 1; i++){ for(int j = 0; j < len - i -1; j++){ if(arr[j].age > arr[j+1].age){ Hero temp = arr[j]; arr[j] = arr[j+1]; arr[j+1] = temp; } } } } void printInfo(Hero arr[], int len){ for(int i = 0; i < len; i++){ cout << "英雄姓名 :" << arr[i].name << " 英雄年龄 :" << arr[i].age << " 英雄性别 :" << arr[i].sex << endl; } } int main(){ Hero arr[5] = { {"刘备",30,"男"}, {"关羽",27,"男"}, {"张飞",27,"男"}, {"赵云",21,"男"}, {"貂蝉",19,"女"}, }; int len = sizeof(arr)/sizeof(arr[0]); bubbleSort(arr, len); printInfo(arr, len); return 0; }
如果有什么问题可以在评论区提出来,一起探讨。



