10_C++入门案例习题: 结构体案例
案例描述
学校正在做毕设项目,每名老师带领5个学生,总共有3名老师,需求如下
设计学生和老师的结构体,其中在老师的结构体中,有老师姓名和一个存放5名学生的数组作为成员
学生的成员有姓名、考试分数,
创建数组存放3名老师,通过函数给每个老师及所带的学生赋值
最终打印出老师数据以及老师所带的学生数据。

#include <iostream>
#include <ctime>
using namespace std;/*
* 案例描述
学校正在做毕设项目,每名老师带领5个学生,总共有3名老师,需求如下设计学生和老师的结构体,其中在老师的结构体中,有老师姓名和一个存放5名学生的数组作为成员学生的成员有姓名、考试分数,
创建数组存放3名老师,通过函数给每个老师及所带的学生赋值最终打印出老师数据以及老师所带的学生数据。
*//*
思维过程:
1. 分析数据: 1名老师带领5名学生,总共有3名老师。学生的信息有 姓名,分数
2. 数据结构体: 分为两个,老师和学生,老师的结构体内有 老师姓名,学生数组[];学生的结构体内有 学生姓名,分数(分数随机);
3. 函数逻辑构成: 分为给老师、学生传参赋值;将所传入的内容输出打印;4. 函数_给老师、学生传参赋值:传入参数(老师数组,老师数量)老师、学生名字由 string nameSeed = "ABCDE";//名字种子命名通过双循环给老师及学生赋值----其中分数随机需添加#include <ctime> rand() % 61 + 40 学生分数在40~100之间* b为最大值,a为最小值要取得 [a,b) 的随机整数,使用 (rand() % (b-a))+ a;---要取得 [a,b] 的随机整数,使用 (rand() % (b-a+1))+ a;---要取得 (a,b] 的随机整数,使用 (rand() % (b-a))+ a + 1;5. 函数_打印老师_学生分数:双循环进行遍历;遍历老师;遍历学生*///结构体定义
struct Student {//成员列表string name; //姓名int score; //分数
};struct Teacher
{string name;Student sArray[5]; //学生数组
};// 给老师和学生赋值函数
void set_Teacher_Stu(Teacher tArray[],int len) { //len为老师的数量string tName = "老师";string sName = "学生";string nameSeed = "ABCDE";//名字种子for (int i = 0; i < len; i++) {tArray[i].name = tName + nameSeed[i];//老师名字for (int j = 0; j < 5; j++){tArray[i].sArray[j].name = sName + nameSeed[j];//学生名字tArray[i].sArray[j].score = rand() % 61 + 40; //学生分数}}}//打印老师学生函数
void print_Teacher_Stu(Teacher tArray[],int len) { ////遍历老师和学生for (int i = 0; i < len; i++){cout << tArray[i].name << endl;// 打印老师的名字for (int j = 0; j < 5; j++) // 打印学生名字{cout << " \t姓名: " << tArray[i].sArray[j].name << " \t分数: "<< tArray[i].sArray[j].score << endl;}}
}int main() {srand((unsigned int)time(NULL));Teacher tArray[3]; // 老师数组为3名老师int len = sizeof(tArray) / sizeof(Teacher);set_Teacher_Stu(tArray, len);//创建数据print_Teacher_Stu(tArray, len);//打印数据system("pause");return 0;}
相关文章:
10_C++入门案例习题: 结构体案例
案例描述 学校正在做毕设项目,每名老师带领5个学生,总共有3名老师,需求如下 设计学生和老师的结构体,其中在老师的结构体中,有老师姓名和一个存放5名学生的数组作为成员 学生的成员有姓名、考试分数, 创建…...
快速定位达梦缓存的执行计划并清理
开发告诉你一个sql慢,你想看看缓存中执行计划时,怎么精准快速定位? 可能一般人通过文本内容模糊搜索 select cache_item, substr(sqlstr,1,60)stmt from v$cachepln where sqlstr like %YOUR SQL STRING%; 搜出来的内容比较多,研…...
Spring中配置 Bean 的两种方式:XML 配置 和 Java 配置类
在 Spring 框架中,配置 Bean 的方式主要有两种:XML 配置 和 Java 配置类。这两种方式都可以实现将对象注册到 Spring 容器中,并通过依赖注入进行管理。本文将详细介绍这两种配置方式的步骤,并提供相应的代码示例。 1. 使用 XML 配置的方式 步骤 创建 Spring 配置文件 创建…...
AI算子开发是什么
AI算子开发是指为人工智能(尤其是深度学习)模型中的基础计算单元(如卷积、矩阵乘法、激活函数等)设计并优化其底层实现的过程。这些计算单元被称为“算子”(Operator),它们是构建神经网络的核心…...
低光环境下双目云台摄像头监控性能解析
双目云台摄像头在低光环境下的监控效果主要取决于其硬件配置和软件优化能力。以下是对双目云台摄像头在低光环境下监控效果的详细分析: 一、硬件配置对低光监控效果的影响 镜头与焦距 : 双目云台摄像头通常配备超大广角固定镜头和360视角的移动镜头&a…...
若依、vben-admin、三维可视化
对三维可视化,包括cesium、模型加载、GIS有关的项目和技术都可以私信,包括基础数据后台管理系统的搭建和配置...
如何Ubuntu 22.04.5 LTS 64 位 操作系统部署运行SLAM3! 详细流程
以下是在本地部署运行 ORB-SLAM3 的详细步骤,基于官方 README.md 和最佳实践整理,适用于 Ubuntu 16.04/18.04/20.04/22.04 系统: 一、系统要求与依赖项安装 1. 基础系统要求 操作系统:Ubuntu 16.04/18.04/20.04/22.04ÿ…...
LLMs可在2位精度下保持高准确率
每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…...
爆改 toxml 组件 支持数据双向绑定 解决数据刷新问题
GGGGGGGGGGGGGGGGGithub地址自行研究 sbfkcel/towxml: 微信小程序HTML、Markdown渲染库https://github.com/sbfkcel/towxml原组件是以导入数据渲染信息为目的、本文以AI数据返回小程序为模拟效果演示 默认情况只在ready 环节进行渲染静态资源 1、对传入数据容器的位置做处理 …...
Unreal如何使用后处理材质实现一个黑屏渐变效果
文章目录 前言相机后期处理材质创建材质相机设置动态修改FadeAlpha参数使用示例最后前言 UE5 开发VR ,如何通过PostProcess轻松实现黑屏渐变效果 最简单的办法,其实是使用一个半球形模型,遮挡住相机,然后控制这个半球形遮罩的颜色透明度,至少Unity中默认的Tunneling是这么…...
施磊老师基于muduo网络库的集群聊天服务器(四)
文章目录 实现登录业务登录业务代码补全数据库接口:查询,更新状态注意学习一下里面用到的数据库api测试与问题**问题1:****问题2:** 用户连接信息与线程安全聊天服务器是长连接服务器如何找到用户B的连接?在业务层存储用户的连接信息多线程安全问题加锁! 处理客户端…...
Java多线程编程初阶指南
目录 一.线程基础概念 线程是什么? 线程与进程对比 为啥要有线程 二.线程实现方式 继承Thread类 实现Runnable接口 常规实现方式 匿名内部类写法 Lambda表达式写法(Java8) 对比总结 三.Thread 类及常见方法 核心功能 核心构造方…...
DB-GPT支持mcp协议配置说明
简介 在 DB-GPT 中使用 MCP(Model Context Protocol)协议,主要通过配置 MCP 服务器和智能体协作实现外部工具集成与数据交互。 开启mcp服务,这里以网页抓取为例 npx -y supergateway --stdio "uvx mcp-server-fetch" …...
CoT-Drive:利用 LLM 和思维链提示实现自动驾驶的高效运动预测
25年3月来自澳门大学和 MIT 的论文“CoT-Drive: Efficient Motion Forecasting for Autonomous Driving with LLMs and Chain-of-Thought Prompting”。 准确的运动预测对于安全的自动驾驶 (AD) 至关重要。本研究提出 CoT-Drive,这是一种利用大语言模型 (LLM) 和思…...
Flowable7.x学习笔记(十)分页查询已部署 BPMN XML 流程
前言 上一篇文章我们已经完成了流程的部署功能,那么下一步就是要激活流程了,但是我们要需要明确的指定具体要激活部署后的哪一条流程,所以我们先把已部署的基础信息以及具体定义信息分页查询出来,本文先把基础代码生成以及完成分页…...
【仓颉 + 鸿蒙 + AI Agent】CangjieMagic框架(15):NaiveExecutor
CangjieMagic框架:使用华为仓颉编程语言编写,专门用于开发AI Agent,支持鸿蒙、Windows、macOS、Linux等系统。 这篇文章剖析一下 CangjieMagic 框架中的 NaiveExecutor。 1 NaiveExecutor是什么? #mermaid-svg-u9WgSijieH1Pk0xU…...
Office文档图片批量提取工具
Office.Files.Images 是一款专注于从 Word、Excel、PPT 等 Office 文档中批量提取图片的轻量级工具,支持 .docx、.xlsx、.pptx 格式文件。该软件体积仅 343KB,无需安装即可运行,通过拖拽操作实现快速解析与导出,尤其适合需批量…...
33-公交车司机管理系统
技术: 基于 B/S 架构 SpringBootMySQLvueelementui 环境: Idea mysql maven jdk1.8 node 用户端功能 1.首页:展示车辆信息及车辆位置和线路信息 2.模块:车辆信息及车辆位置和线路信息 3.公告、论坛 4.在线留言 5.个人中心:修改个人信息 司机端功能…...
PyCharm 初级教程:从安装到第一个 Python 项目
作为 Python 程序员,无论是刚入门还是工作多年,PyCharm 都是一个绕不开的开发工具。它是 JetBrains 出品的一款强大的 Python IDE,有自动补全、调试、虚拟环境支持、代码检查等等功能,体验比命令行 记事本舒服一百倍。 今天这篇…...
文件上传漏洞3
1. 例题:文件上传限制 1)上传漏洞靶场介绍 项目名称: upload-labs开发语言: 使用PHP语言编写功能定位: 专门收集渗透测试和CTF中遇到的各种上传漏洞的靶场关卡数量: 目前共21关,每关包含不同上传方式注意事项: 每关没有固定通关方法,不要自限…...
QML FontDialog:使用FontDialog实现字体选择功能
目录 引言相关阅读FontDialog基本介绍字体属性 实例演示项目结构代码实现Main.qmlmain.cpp 代码解析运行效果 总结 引言 在桌面应用程序开发中,字体选择是一个常见的需求。Qt Quick提供了FontDialog组件来实现这一功能。本文将介绍如何在Qt Quick应用程序中使用Fon…...
力扣刷题Day 27:环形链表(141)
1.题目描述 2.思路 创建一个结点集合,遍历链表,如果遇到已经加进集合的结点就说明链表有环。 3.代码(Python3) class Solution:def hasCycle(self, head: Optional[ListNode]) -> bool:node headnode_set set()while node…...
1.1软考系统架构设计师:系统架构的定义与作用 - 超简记忆要点、知识体系全解、考点深度解析、真题训练附答案及解析
超简记忆要点 定义:结构决策 | 抽象概念 | 多视图模型(逻辑/物理/动态)作用:解耦复杂需求 | 集成扩展 | 指导开发(蓝图)要素:构件(原子/复合) | 连接件(API/…...
研发效率破局之道阅读总结(3)工程优化
研发效率破局之道阅读总结(3)工程优化 Author: Once Day Date: 2025年4月22日 一位热衷于Linux学习和开发的菜鸟,试图谱写一场冒险之旅,也许终点只是一场白日梦… 漫漫长路,有人对你微笑过嘛… 全系列文章可参考专栏: 程序的艺术_Once-Day…...
metasploit(2)生成dll木马
声明!本文章所有的工具分享仅仅只是供大家学习交流为主,切勿用于非法用途,如有任何触犯法律的行为,均与本人及团队无关!!! 一、dll文件基本概念 DLL 是一种包含可由多个程序同时使用的代码和数…...
数据结构--并查集-高效处理连通性问题
目录 一、理论基础 (1)并查集的功能及实现原理 (2)代码模版 (3)模拟过程 (4)应用 二、基础题练习 (1)寻找存在的路径(模版题) …...
PLOG安装
Plog可以通过以下命令安装 cd ~ && git clone https://github.com/SergiusTheBest/plog.gitcd plog && mkdir buildcd build && cmake ..make && sudo make installcd ~ && sudo rm -rf ./plog若无法科学上网,可使用git cl…...
LeetCode 热题 100_分割等和子集(89_416_中等_C++)(动态规划)
LeetCode 热题 100_分割等和子集(89_416) 题目描述:输入输出样例:题解:解题思路:思路一(动态规划): 代码实现代码实现(思路一(动态规划࿰…...
WPS Office安卓版云文档同步速度与PDF转换体验测评
WPS Office安卓版是很多人常用的移动办公软件。它支持在线编辑、文档同步、格式转换等功能,适合手机和平板用户随时处理文档。我们用它配合谷歌浏览器打开网页文档时,也可以将内容快速保存到云端或转换成PDF格式使用。 先说云文档同步。在打开WPS Office…...
Eureka、LoadBalance和Nacos
Eureka、LoadBalance和Nacos 一.Eureka引入1.注册中心2.CAP理论3.常见的注册中心 二.Eureka介绍1.搭建Eureka Server 注册中心2.搭建服务注册3.服务发现 三.负载均衡LoadBalance1.问题引入2.服务端负载均衡3.客户端负载均衡4.Spring Cloud LoadBalancer1).快速上手2)负载均衡策…...
