- 1、本文档共175页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
第7章复杂数据结构——结构体、联合及
用户自定义类型
C语言程序设计ProgramminginC
——学习并不等于就是摹仿某些东西,而是掌握技巧和方法。
第7章结构体、联合及用户自定义类型
本章教学目标
1、掌握定义结构体类型、结构体变量、结构体数
组和结构体指针的方法。
2、掌握初始化结构体变量、结构体数组的方法。
3、掌握结构体成员的引用方法。
4、应用结构体变量、结构体数组和结构体指针
5、掌握结构体在函数中的使用
6、掌握链表的概念和基本操作
7、掌握联合体的概念、存储特点及应用。
8、了解自定义类型、枚举类型的概念和应用
第7章结构体、联合及用户自定义类型
利用结构体,重新设计“学生信息管理系统”。
本章项目任务
第7章结构体、联合及用户自定义类型
本章内容
7.1结构及结构变量的引入
7.2结构数组
7.3结构与指针
7.4结构体与函数
7.5链表
7.6特殊的数据类型——联合体
7.7用typedef定义类型
7.8枚举(Enumeration)类型
第7章结构体、联合及用户自定义类型
7.1.1结构体类型的定义
7.1.2结构体变量的定义和初始化
7.1.3结构体变量的使用
7.1结构(Structure)及结构变量的引入
第7章结构体、联合及用户自定义类型
C语言引入了一种能集不同数据类型于一体的
结构体类型。结构体类型的变量可以拥有不同数据类型的成员,是不同数据类型成员的集合。
例:住宿表、成绩表、通讯地址表如下,
住宿表由下面的项目构成:
姓名
性别↵
职业
年龄
身份证号码
(字符串)↵
(字符)↵
(字符串)↵
(整型)↵
(长整型或字符串)↵
姓名
(字符串)
工作单位↵
(字符串)
家庭住址
(字符串)↵
邮编
(长整型)↵
电话号码
(字符串或长整型)↵
E-mail(字符串)
班级↵
学号
姓名
操作系统
计算机网络
数据结构
(字符串)
(长整型)↵
(字符串)
(实型)↵
(实型)↵
(实型)↵
成绩表由下面的项目构成:↓
第7章结构体、联合及用户自定义类型
通讯地址表由下面的项目构成:
结构体类型适合将属于同一对象的,具有不
同方面的不同类型的数据信息有机地组合在一起,即将具有内在联系的不同类型的数据统一为一个整体,形成一种新的数据类型。
“结构体”组合了一组相关联的数据,但各
个数据成员并不需要具有同一数据类型,它能够客观反映现实信息的本质。
使用结构体类型和数据,均需要用户根据实
际分析结果自行定义。
第7章结构体、联合及用户自定义类型
7.1.1结构体类型(Structuretype)的定义
用户可按照实际需求,并根据C语言提供的结构体格式,自
行定义结构体数据类型,某结构体一且定义,程序中就具有了这种结构的数据类型,其用代表客观现实信息的不]。
同方面
说明:
(1)“struct”为定义结构体类型的关键字;
(2)“结构体名”为用户自行命名的结构体类型标识符;
(3)结构体的各成员列表放在“{}”中;
(4)整个结构体类型定义必须用“;”作为结束符。
第7章结构体、联合及用户自定义类型
{类型名1结构成员名表》
类型名2结构成员名表2;
类型名n结构成员名表n;
结构体类型定义的一般形式:
struct结构体类型名
结构体类型根据不同的问题,其成员是不同的,可以有
任意多的结构体类型描述。
(3)“通讯地址表”结构体类型:
structaddr/*结构体类型名addr*/
{charname[20];/*姓名*1
chardepartment[30];/*部门*1
charaddress[30];/*住址*/
longbox;/*邮编*V
longphone;/*电话号码*/
charemail[30];/*Email*/
};
第7章结构体、联合及用户自定义类型
结构体类型定义的嵌套:
结构体类型中的成员类型不仅可是简单数据类型,也可是构造类型,当然也可是某种结构体类型。当结构体定义中又包含结构体类型时称为结构体的嵌套。
(4)定义“日期”结构体类型:
structdataI*结构体类型名data*/
{intyear,month,day;};*年、月、日为整型*/
(5)定义“学生”结构体类型:
structstudent
您可能关注的文档
- 《供配电技术》第6章.pptx
- 流量检测-流量的基本概念.pptx
- 汽车营销基础与实务 教学课件 ppt 作者 陈永革 何瑛 主编.pptx
- 男性导尿常见问题防范及处理精品医学课件.pptx
- 护理工作中的法律法规.pptx
- 建设工程法律法规实务.pptx
- 八年级历史下册_第三单元_第8课_改革开放的展开课件_中华书局版.pptx
- 物流运输组织与管理 第2版 教学课件 奉毅 第二章 公路货物运输.pptx
- re英语作文规范训练.pptx
- 岳麓版高中历史选修5《是什么》ppt课件.pptx
- 冲刺2024届中考数学真题重组试卷02(江苏省盐城市专用)含解析.pdf
- 2023-2024学年江苏省盐城市阜宁县七年级下学期期中考试语文试题(含答案).pdf
- 冲刺2024届中考数学真题重组试卷01(江苏省盐城市专用)含解析.pdf
- 2023-2024学年四川省眉山市仁寿县九年级下学期期中化学学情检测试题(含答案).pdf
- 2023-2024学年重庆市高一下学期第二次月考化学模拟试题(含答案).pdf
- 2023-2024学年四川省眉山市东坡区八年级下学期4月期中数学质量检测试题(含答案).pdf
- 2023-2024学年浙江省杭州市高一下学期4月期中考试化学质量检测试题(含答案).pdf
- 2023-2024学年浙江省嘉兴市高一下学期4月月考地理质量检测试题(含答案).pdf
- 2023-2024学年江苏省徐州市沛县八年级下学期4月期中语文质量检测试题(含答案).pdf
- 2023-2024学年福建省永安市高一下学期第一次月考地理质量检测试题(含解析).pdf
文档评论(0)