吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1151|回复: 2
收起左侧

[学习记录] C++,从入坑到埋了自己(四)-结构体初学案例

[复制链接]
tester001 发表于 2022-7-16 23:14
C++学习之结构体
/*
* 学校做毕业设计项目,每名老师带领5个学生,总共有3名老师,需求如下:
* 设计学生和老师的结构体,其中挂在老师的结构体重,有老师姓名和一个存放5名学生的数组作为成员
* 学生的成员有姓名、考试分数,创建数组存放3名老师,通过函数给每个老师及所带的学生赋值
* 最终打印老师数据以及老师所带的学生数据
*/
[C++] 纯文本查看 复制代码
#include<iostream>
#include<string>
#include<ctime>
using namespace std;

/*
* 学校做毕业设计项目,每名老师带领5个学生,总共有3名老师,需求如下:
* 设计学生和老师的结构体,其中挂在老师的结构体重,有老师姓名和一个存放5名学生的数组作为成员
* 学生的成员有姓名、考试分数,创建数组存放3名老师,通过函数给每个老师及所带的学生赋值
* 最终打印老师数据以及老师所带的学生数据
*/

//定义学生的结构体
struct student
{
	//成员列表要有:姓名、考试分数
	string stu_name;
	int stu_score;
};

//定义老师的结构体
struct teacher
{
	//成员列表要有:老师的姓名、学生的数组
	string tea_name;
	struct student Stuarr[5];
};

//这是赋值函数
void allocate(teacher arr[],int Slenth, int Tlenth)
{
	string namelist = "ABCDE";
	//int stuscore[3][5] = { {60,90,85,65,70},{75,80,95,100,88},{86,76,68,63,98} };
	for (int i = 0; i < Tlenth; i++)
	{
		arr[i].tea_name = "teacher_";
		arr[i].tea_name += namelist[i];
		for (int j = 0; j < Slenth; j++)
		{
			arr[i].Stuarr[j].stu_name = "student_";
			arr[i].Stuarr[j].stu_name += namelist[j];
			int random = rand() % 61 + 40;
			arr[i].Stuarr[j].stu_score = random;
		}
	}
}

//这是打印函数
void printInfo(teacher arr[], int Slenth, int Tlenth)
{
	for (int i = 0; i < Tlenth; i++)
	{
		cout<<"第"<<i+1<<"老师的姓名为"<< arr[i].tea_name<< endl;
		for (int j = 0; j < Slenth; j++)
		{
			cout << "带的第" << j + 1 << "位学生姓名为" << arr[i].Stuarr[j].stu_name << endl;
			cout << "带的第" << j + 1 << "位学生的成绩为" << arr[i].Stuarr[j].stu_score << endl;
		}
		string wall = "-----------------------------------";
		cout<< wall <<endl;
	}
}

//这是主函数
int main()
{
	srand((unsigned int)time(NULL));
	student Sarr[5];
	teacher Tarr[3];
	int Slen = sizeof(Sarr) / sizeof(Sarr[0]);
	int Tlen = sizeof(Tarr) / sizeof(Tarr[0]);
	allocate(Tarr, Slen,Tlen);
	printInfo(Tarr, Slen, Tlen);
	system("pause");
	return 0;
}

免费评分

参与人数 2热心值 +2 收起 理由
unnyfan + 1 热心回复!
glz220 + 1 热心回复!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

leonrein 发表于 2022-7-17 10:26
主函数里定义 student 和 teacher 的时候, 前面没有加 struct?
毕竟前面也没有 typedef
 楼主| tester001 发表于 2022-7-17 11:43
leonrein 发表于 2022-7-17 10:26
主函数里定义 student 和 teacher 的时候, 前面没有加 struct?
毕竟前面也没有 typedef

定义具体的结构体时可以省略
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2025-1-12 19:08

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表