- 1、本文档共39页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言结构和社区
第八章 结构体与共用体 【教学要求】 1.理解结构体的含义。 2.掌握结构体类型变量的定义方法。 3.掌握结构体类型变量的引用方法。 4.掌握结构体类型变量如何在定义的同时初始化。 5.理解共同体的含义,掌握共同体类型变量的定义方法。 6. 了解结构体数组的定义和数组元素的引用。 7.了解指向结构体类型数据的指针的概念及使用。 8.了解链表结点的结构形式,链表的基本操作。 9.了解枚举类型的定义,及枚举类型的输入输出。 10.了解TYPEDEF的作用。 第八章 结构体与共用体 结构体(struct) 共同体(union) 结构体与共用体小结 枚举类型(enum) typedef定义类型 结构体(struct) 结构体的概念 结构体数组 结构体指针 结构体的概念 结构体的定义 结构体变量的存储特点 结构体变量的引用 结构体的初始化 结构体的定义 1、含义:不同类型数据的集合。 2、功能:用于描述一个“概念”。(或记录) 如:num name sex age score addr 10010 LiFun M 18 87.5 BeiJing 3、定义方法: 方法一:在定义结构体类型的同时,直接给出结构体变量。 如: struct 结构体名 { 结构体成员变量的定义; } 变量名1,变量名2,...,变量名n; 方法二:先给出结构体类型的定义,再定义结构体变量。 如: struct 结构体名 { 结构体成员变量的定义; 例: } ; struct 结构体名 变量名1,变量名2,...,变量名n; 4、要点: 方法二: struct student { int number; char name[20]; char sex; int age; float score; char addr[30]; }; struct student student1,student2; 4、要点: 结构体名(struct): 用于标识一种新的数据类型, 即结构体类型,可以省略。 注意区分结构体类型与基本数 据类型的不同,它是复合数据 类型。 结构体成员变量与普通变量的 定义一样,它还可以是结构体 变量。 结构体变量的存储特点 结构体类型变量的引用 一、原则:通过结构体的成员来引用结构体变量。 二、成员的引用方法为:结构体变量名.成员名 三、要点: 1.结构体变量不能整体输入输出,只能对它的成员进行操作。 如:student1.num; 2.如果成员本身又是一个结构体类型,则要使用若干个成员运算符,逐级找到最底层的成员。 如:student1.birthday.day 3.成员变量可以象一般的变量一样进行各种运算,只是在运算时要加上“.”运算符。 4.可以引用成员的地址。 结构体变量的初始化 一、只可以给主函数中或外部存储类别和静态存储类别的结构体变量、数组赋初值。 1、对外部存储类型的初始化. 2、对静态存储类型的结构体变量进行初始化 二、给结构体变量赋初值不能跨越前面的成员而只给后面的成员变量赋值。 例exp8_1:对外部存储类型的初始化. #include stdio.h struct student { long number; char name[20]; char sex; int age; float score; char addr[30]; }a={99641,”Li Ping”,’M’,56,”Tianjin Street”}; main() { printf(“No.:%ld\nname:%s\nsex:%c\naddress:%s\n”, a.num,a.name,a.sex,a.addr); } 例exp8_2:对静态存储类型的结构体变量进行初始化. #include stdio.h main(){ static struct student { long number; char name[20]; char sex; int age; float score; char addr[30]; }a={99641,”Li Ping”,’M’,56,”Tianjin Street”}; printf(“No.:%ld\nname:%s\nsex:%c\naddress:%s\n”,
您可能关注的文档
- Chen Yiyun在回答问题后的5个原则 5.ppt
- Chen Chouyong对现代管理的回答.ppt
- Chen Yuezeng的一般生物学考试.doc
- CSC公共留学项目详细描述(附在邀请模板)联合培训博士。.ppt
- C语言——内部函数和外部函数.doc
- C语言1.9递归和递归.ppt
- C编程语言(Jiang Baochuan)实验3个答案.doc
- C程序语言课程标准.doc
- Chuanjiang指出,建筑经济和企业管理.doc
- C语言参数、参数、函数调用、指针、引用和符号实例.doc
- 2024_2025学年新教材高中地理第1章自然环境与人类社会第3节环境问题及其危害学案新人教版选择性必修3.doc
- 2025届湖北省宜宜昌市部分示范高中教学协作体高三第二次模拟考试生物试卷含解析.doc
- 2025届湖北部分重点中学高三第二次诊断性检测化学试卷含解析.doc
- 2025届广东省江门市第一中学高三第五次模拟考试历史试卷含解析.doc
- 福建省漳州市东山第二中学2025届高考历史倒计时模拟卷含解析.doc
- 2025届云南省陆良县高考化学必刷试卷含解析.doc
- 上海市浦东新区建平中学2025届高考历史二模试卷含解析.doc
- 菏泽市重点中学2025届高考化学押题试卷含解析.doc
- 2025届福建省厦门市英才学校高考生物考前最后一卷预测卷含解析.doc
- 福建省三明市清流县第二中学2025届高三最后一卷生物试卷含解析.doc
文档评论(0)