- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第6章 结构与联合类型 6.1 结构与联合类型的概述 6.2 结构类型 6.3 链表及其操作 6.4 位域与联合类型 6.5 枚举类型 6.1 结构与联合类型的概述 结构类型是什么?由多个元素构成的集合,这些元素的每一个均有独立的变量名,采取按名访问方式,每个元素可以定义为不同的类型,称数据项。数据项的类型可以是基本类型,也可以是构造类型 示例:在C语言中,用结构类型描述上述数据结构的格式如下:struct student { char no[6]; char name[10]; char sex; int grade[4];}; 6.1 结构与联合类型的概述 联合类型是什么?联合类型的定义格式与结构类型相似,但其成员变量的内存分配方式不同,联合类型的所有成员不论其类型和大小,均共享使用同一块内存单元 下图可帮助读者理解不同成员共享内存的方法: 6.1 结构与联合类型的概述 例如,要进行学生情况调查,大学生的调查项目为专业,而中学生的调查项目为身高,其它项目均相同,这时可以使用联合方式来实现。调查表格式如下:C语言可利用联合类型表格式中的共项栏目:专业/身高项目,定义方法如下:struct survey { char name[10]; ... union { char major[20]; int height; } item;}; 6.2.1结构类型与结构变量 结构类型结构可以使用typedef定义为类型,具体格式如下:typedef struct { 成员定义列表 } 结构类型名;注:保留字struct后也可以取类型名,这主要用于递归定义中 示例:typedef struct {int year, month, day;} Date;Date d1,d2,d3;d1.year=2000;d2.month=3;d3.day=15;注:d1,d2,d3为Date类型的变量 6.2.1结构类型与结构变量 结构变量的定义有三种方式:1)先定义类型再定义变量 typedef struct { 成员定义列表 } 结构类型名;结构类型名 变量名={初始化值表};2)在定义类型的同时定义变量 struct 结构类型名{ 成员定义列表 }变量名表;3)不定义类型直接定义结构变量 struct{ 成员定义列表 }变量名表;注:定义变量时没有给出结构类型名,该结构类型只能定义一次结构变量 6.2.1结构类型与结构变量 示例:1)typedef struct { char no[6]; char name[10]; char sex; int grade[4];} student;student a={02001,David,M,{80,75,85,80}};2)struct student { char no[6]; char name[10]; char sex; int grade[4];} a, b;3)struct { char no[6]; char name[10]; char sex; int grade[4];} a, b; 6.2.2 结构变量的基本操作 结构变量的使用可以从两种情况考虑:1.使用结构变量中的成员使用结构变量中的成员的格式:结构变量名.成员变量名例如:strcpy(a.no,02001);a.age=30;a.birthday.month=3;(a.birthday.year)=1985;(a.birthday).day=2; 2.直接使用结构变量结构变量可以作为一个整体使用,主要的操作有:复制和作为函数参数。例如: struct student a={02001,john},b={02002,john}; if(a!=b) a=b; 6.2.2 结构变量的基本操作 例6.1 编写程序完成结构变量的输入输出(一)#include stdio.htypedef struct {int month,day,year;} Date;typedef struct { char no[6]; char name[10]; Date birthday;} Student;Student stud; /*全局变量*/void main(){ char ch; do { printf(Function Menu\n
您可能关注的文档
- 2014年经济题解析.ppt
- 2014年人教小学五年级数学下册第五单元异分母分数加减法练习.ppt
- 2014秋第一元教案.doc
- 2014浙江传学院招生简章.doc
- 2015年安徽选调生招考公告.doc
- 2015年湖北选调生招录公告.doc
- 2015年曲阜范大学硕士研究生招生简章.doc
- 2015年武汉程大学硕士研究生招生简章.doc
- 2015年运城盐湖区公开招聘38名教师公告.doc
- 2015年运城盐湖区公开招聘38名教师资格初审时间.doc
- 工会代表大会运行规则及十大制度解读.docx
- 法院合同法案例分析与学习笔记.docx
- 医疗急救口头医嘱管理流程制度.docx
- 幼儿园科学实验教学设计案例.docx
- 2025秋九年级英语全册Unit2Ithinkthatmooncakesaredelicious课时3SectionAGrammarFocus_4c习题课件新版人教新目标版.pptx
- 2025秋九年级英语全册Unit5WhataretheshirtsmadeofSectionA合作探究二课件新版人教新目标版.pptx
- 2025秋九年级英语全册Unit2Ithinkthatmooncakesaredelicious课时4SectionB1a_1d习题课件新版人教新目标版.pptx
- 2025秋九年级英语全册Unit1Howcanwebecomegoodlearners课时3SectionAGrammarFocus_4c习题课件新版人教新目标版.pptx
- 2025秋九年级英语全册Unit5Whataretheshirtsmadeof课时4SectionB1a_1e课件新版人教新目标版.pptx
- 2025秋九年级英语全册Unit3Couldyoupleasetellmewheretherestroomsare课时3SectionAGrammarFocus_4c课件新版人教新目标版.pptx
最近下载
- 鸿业软件限时版pipingl管立得用户手册.pdf
- 试验检测监理细则.doc VIP
- 建设工程纠纷法律培训课件.pptx VIP
- 2025人教版英语七年级上册全册语法综合练习100题( 学生版+解析版).docx VIP
- 小学英语特色作业研究结题报告.docx VIP
- 省级优秀课件综合与实践活动度量衡.pptx VIP
- 2016食品安全国家标准食品中放射性物质检验总则.pdf VIP
- 职业技术学院宠物养护与经营专业人才培养方案.pdf VIP
- 预防校园欺凌安全知识.pptx VIP
- “成于大气 信达天下” ———成信校史课程知到智慧树期末考试答案题库2025年成都信息工程大学.docx VIP
原创力文档


文档评论(0)