当前位置: 首页 > news >正文

#70结构体案例1(导师,学生,成绩)

效果:

代码:

#include <iostream>
#include <string>
using namespace std;#include "random"int get_random_num(int min,int max)
{random_device rd;mt19937 gen(rd());uniform_int_distribution<> dis(min,max);int random_number = dis(gen);return random_number;
}//结构体,学生(姓名,分数)
struct Student
{string sName;int score;
};//结构体,教师(姓名,管理打学生)
struct Teacher
{string tName;struct Student sArray[5];
};//函数,分配空间
void allocateSpace(struct Teacher tArray[],int len)
{string nameSeed="ABCDE";for(int i=0;i<len;i++){tArray[i].tName="Teacher_";                 //教师姓名tArray[i].tName+=nameSeed[i];for(int j=0;j<5;j++){tArray[i].sArray[j].sName="Student_";   //学生姓名tArray[i].sArray[j].sName+=nameSeed[j];
//          int random=rand()%61+40;                //学生成绩  rand()%60是0-59随机数int random = get_random_num(40,100);tArray[i].sArray[j].score=random;}}
}//函数,打印信息
void printInfo(struct Teacher tArray[],int len)
{for(int i=0;i<len;i++){cout<<"教师姓名:"<<tArray[i].tName<<endl;for(int j=0;j<5;j++){cout<<"\t学生姓名:"<<tArray[i].sArray[j].sName<<" 学生成绩:"<<tArray[i].sArray[j].score<<endl;}}
}int main(){struct Teacher tArray[3];int len=sizeof(tArray)/sizeof (tArray[0]);allocateSpace(tArray,len);printInfo(tArray,len);return 0;
}

总结:

1)使用字符串要先声明#include <string>;

2)结构体结尾需要加分号,结构体可以包含结构体;

3)函数的定义如图,参数列表要写全,例:void allocateSpace(struct Teacher tArray[],int len);

4)随机数int num=random()%60是随机生成0-59的意思;

5)len表长度,可以用int len=sizeof(Array)/sizeof(Array[0]);来计算长度;

相关文章:

  • 交通预测数据文件梳理:METR-LA
  • Unrecognized option: --add-opens=java.base/java.lang=ALL-UNNAMED
  • 卷积神经网络(CNN)简单原理与简单代码实现
  • 人工智能自动驾驶三维车道线检测—PersFormer模型代码详解
  • 【算法模板】图论:Tarjan算法求割边割点
  • datawind可视化查询-计数count(xxx)函数
  • Brave浏览器:开启隐私保护新时代
  • 按照指定格式打印pprint()
  • 自动化测试面试题
  • LeetCode459 重复的子字符串
  • 按xls标签替换docx及xls内容
  • docker-compose笔记
  • Scrapy入门篇
  • 小米账号移除工具箱 | 移除MXTGT工具箱
  • IO流学习总结
  • 【Leetcode】104. 二叉树的最大深度
  • 【跃迁之路】【733天】程序员高效学习方法论探索系列(实验阶段490-2019.2.23)...
  • 2019年如何成为全栈工程师?
  • Centos6.8 使用rpm安装mysql5.7
  • conda常用的命令
  • ECMAScript入门(七)--Module语法
  • input实现文字超出省略号功能
  • JavaScript设计模式系列一:工厂模式
  • Java知识点总结(JavaIO-打印流)
  • js数组之filter
  • Redis学习笔记 - pipline(流水线、管道)
  • 第13期 DApp 榜单 :来,吃我这波安利
  • 工作手记之html2canvas使用概述
  • 近期前端发展计划
  • 离散点最小(凸)包围边界查找
  • 七牛云假注销小指南
  • 浅谈web中前端模板引擎的使用
  • 区块链技术特点之去中心化特性
  • 容器服务kubernetes弹性伸缩高级用法
  • 如何用Ubuntu和Xen来设置Kubernetes?
  • 智能合约Solidity教程-事件和日志(一)
  • SAP CRM里Lead通过工作流自动创建Opportunity的原理讲解 ...
  • ​LeetCode解法汇总1410. HTML 实体解析器
  • ​马来语翻译中文去哪比较好?
  • #FPGA(基础知识)
  • $refs 、$nextTic、动态组件、name的使用
  • (1) caustics\
  • (1)(1.9) MSP (version 4.2)
  • (8)Linux使用C语言读取proc/stat等cpu使用数据
  • (poj1.3.2)1791(构造法模拟)
  • (每日持续更新)jdk api之FileFilter基础、应用、实战
  • (十) 初识 Docker file
  • (一)Dubbo快速入门、介绍、使用
  • (一)eclipse Dynamic web project 工程目录以及文件路径问题
  • (最全解法)输入一个整数,输出该数二进制表示中1的个数。
  • .htaccess配置重写url引擎
  • .NET 将混合了多个不同平台(Windows Mac Linux)的文件 目录的路径格式化成同一个平台下的路径
  • .Net多线程Threading相关详解
  • .NET连接数据库方式
  • .net通用权限框架B/S (三)--MODEL层(2)