版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
任务7.1设计学生信息登记卡主讲:陈静目录教学目标与重难点结构体基本概念结构体定义与声明结构体初始化方法结构体成员访问任务实施与代码演示教学总结01020304050607教学目标与重难点01教学目标知识目标1.理解结构体的基本概念,掌握使用struct关键字定义结构体类型及成员列表的方法。2.掌握结构体变量的声明与三种初始化方式(定义时直接赋值、逐个成员赋值、键盘输入)。3.掌握使用点运算符(.)访问结构体成员的方法,理解结构体作为整体数据类型的特点。能力目标1.能根据实际需求定义结构体类型,合理设计成员的数据类型与命名。2.能运用三种初始化方式创建结构体变量,通过点运算符完成成员的输入与输出。3.能独立设计学生信息登记卡程序,实现多学生信息的录入、展示、平均成绩计算及最高分查找。素养目标1.培养"化零为整、系统整合"的思维能力,将碎片化数据组织成有机整体,提升程序可读性与可维护性。2.树立"严谨规范"的办事作风,结构体成员命名与类型选择清晰合理,避免信息混乱。3.学习杜定友"物以类聚、事以群分"的档案管理智慧,养成工整归类、系统整理的工作习惯。树立"严谨规范"的办事作风教学重难点教学重点结构体类型的定义语法掌握struct关键字与成员声明的规范写法结构体变量的三种初始化方式顺序初始化、指定成员初始化、动态赋值点运算符访问结构体成员变量名.成员名的正确使用方法教学难点理解结构体作为用户自定义类型的意义从抽象数据类型的角度建立认知框架区分结构体类型定义与变量声明类型是模板,变量是实例,避免概念混淆结构体成员的逐个赋值与字符串处理字符数组赋值需用strcpy,不能直接等于任务导入如果需要存储100名学生的信息(学号、姓名、班级、手机号、成绩),使用单独的变量会有什么问题?变量数量庞大关系难以维护数据容易错配解决方案思路将这些相关信息"打包"成一个整体打包概念将零散数据整合为统一单元结构体引入定义复合数据类型框架整体管理批量处理简化代码逻辑结构体基本概念02结构体的基本概念数据组合将不同类型的数据组合成一个整体成员定义每个数据项称为结构体的成员信息整合一个结构体变量可保存一个对象的全部信息"信息登记卡"就像一张信息登记卡,一张卡片记录一个学生的完整信息——这正是结构体的核心思想:用单一变量承载复杂对象的完整数据结构体定义与声明03定义结构体类型struct
关键字+结构体名称+{成员列表}示例代码struct
Student{charname[50];//学生姓名intage;//学生年龄floatscore;//学生成绩};struct—定义结构体的关键字Student—结构体类型名称大括号内—成员列表,每个成员需指定类型和名称声明结构体变量声明语句structStudents1;声明一个Student类型的变量s1structStudent类型名称s1变量名称三成员声明后,s1包含name、age、score三个成员训练项目练习任务:定义Book结构体整型book_id书号字符数组title书名字符数组author作者浮点型price价格要求写出结构体类型定义代码struct
Book{//在此填写成员定义
?book_id;
?title;
?author;
?price;};结构体初始化方法04方式一:定义时直接初始化语法简洁,一行完成声明与初始化合并,代码紧凑高效成员值按顺序对应花括号内数值依次匹配结构体成员定义顺序适合初始值已知的场景编译期确定数据时首选此方式定义时直接初始化
=
{
花括号赋值
}示例代码struct
Students2=
{
"LiSi"
,
21
,
90.0
}
;方式二:逐个成员初始化点运算符
.
逐个成员赋值示例代码structStudents3;
strcpy
(,"NameMu");s3.age=19;s3.score=78.5;灵活性高,可单独修改运行时动态调整各成员值字符数组需使用strcpy函数不能直接赋值,必须用字符串拷贝适合运行时动态赋值程序执行中根据输入修改成员值方式三:键盘输入初始化scanf
键盘输入+&
取地址示例代码structStudents4;scanf("%d",
&s4.age
);scanf("%s",);scanf("%f",
&s4.score
);注意事项整型、浮点型成员需加
&
取地址符字符数组直接使用数组名,无需&课堂互动定义时直接初始化固定初始值适合初始值固定的情况编译期确定,效率最高逐个成员赋值单独修改适合需要单独修改某个成员灵活控制,精准调整键盘输入用户交互适合用户交互场景运行时动态获取数据结构体成员访问05访问结构体成员变量名.成员名.读取成员值通过点运算符访问结构体变量中的指定成员如
获取学生姓名.修改成员值通过赋值语句修改结构体成员内容如s2.age=20更新年龄.匹配格式符根据成员数据类型选择对应printf格式%s字符串、%d整型、%f浮点型任务实施与代码演示06任务实施要求实现学生信息的登记与展示功能设计目标定义学生结构体Student包含:学号、姓名、班级、手机号码、成绩创建3个结构体变量分别使用三种方式初始化输出每个学生的完整信息格式整齐,信息完整呈现计算并输出所有学生的平均成绩遍历累加后求平均值找出成绩最高的学生输出其姓名和成绩结构体类型定义学生信息结构体定义structStudent{int
id;//学号char
name[20];//姓名char
class[20];//班级char
phone[15];//手机号码float
score;//成绩};学号整型数据类型唯一标识每位学生字符数组姓名、班级、手机存储字符串信息浮点型成绩数据类型支持小数精度三种初始化方式演示方式一定义时直接初始化structStudentstu1={1001,"张三","计算机1班",,85.5};在定义结构体变量的同时,用大括号列出各成员初始值按结构体成员声明顺序依次赋值,简洁高效方式二逐个成员赋值structStudentstu2;stu2.id=1002;strcpy(,"李四");strcpy(stu2.class,"计算机2班");strcpy(stu2.phone,);stu2.score=92.0;先定义变量,再通过赋值语句或strcpy函数逐个设置适用于运行时动态赋值,字符串需用strcpy处理方式三键盘输入使用scanf逐项输入stu3的各成员值通过scanf函数从键盘接收用户输入的数据注意字符数组与基本类型使用不同格式控制符信息输出与统计保证列对齐:使用%-Nd左对齐格式符,确保各列宽度一致printf格式化输出printf("%-8d%-6s%-12s%-15s%.1f\n",stu1.id,,stu1.class,stu1.phone,stu1.score);计算平均成绩floatavg=(stu1.score+stu2.score+stu3.score)/3;累加所有学生成绩后除以人数使用float类型保证小数精度找出最高分学生structStudentmaxStu=stu1;if(stu2.score>maxStu.score)maxStu=stu2;if(stu3.score>maxStu.score)maxStu=stu3;假设第一个学生为最高分,逐一比较遇到更高分则更新maxStu变量训练项目提交要求:完整代码+运行结果截图实践任务1定义Book结构体类型创建包含书名、作者、价格等字段的数据结构2创建3本书的信息,使用不同初始化方式分别采用列表初始化、成员赋值、构造函数等方式3输出所有书籍信息遍历结构体数组,格式化打印每本书的详细信息4计算并输出平均价格累加所有书籍价格后除以数量,保留两位小数5找出价格最高的书籍遍历比较价格字段,记录并输出最大值及对应书名教学总结07知识回顾"化零为整"将零散变量整合为结构化信息卡结构体概念将不同类型数据组合成整体结构体定义struct关键字+
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 防虫蛀包装课件
- 帆船图标制作软件课件
- 妇产科个人总结课件
- 摩根大通-中国服饰与美妆行业:厄尔尼诺对冬装的负面影响或小于此前担忧户外活动和防晒产品存在潜在上行空间-20261104
- 飞出地球去课件
- 房产成本管控课件
- 2026-2027学年初中心理健康七年级下册北师大版(2021)第十六课 虚拟与现实课时集训卷
- 2026自主实验室标准体系前瞻框架与实施路线报告
- 核心素养背景下初中英语综合素质评价手册
- 管道支架加固施工方案
- 2025年政府采购评审专家考试真题库附含答案
- 永嘉农商银行2026年秋季新员工招聘笔试模拟试题及答案解析
- TCPSS862025直流配电系统电能质量及测量方法
- 手术室不良事件的防范措施
- 2027贵州航天电器秋季招聘284人笔试参考题库及答案详解
- JEP204 2026 中文版 碳化硅功率器件应力测试程序目录
- 2026年(完整版)纪法知识竞赛题库(含答案)
- 康复平衡与协调功能训练
- 燃气调压器泄漏应急预案演练脚本
- -低空安全防护标准体系建设指南(2026年版)
- (知识清单)-2026-2027学年五年级上册科学教科版
评论
0/150
提交评论