- 1、本文档共35页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第七章結构体与共同体
C语言程序设计(第7章 结构体与共用体)017.1 结构体类型变量的定义和引用? ? 7.1.1 结构体类型变量的定义? ? 7.1.2 结构体类型变量的引用? ? 7.1.3 结构体类型变量的初始化7.2 结构体数组的定义和引用前面的课程我们学习了一些简单数据类型(整型、实型、字符型)的定义和应用,还学习了数组(一维、二维)的定义和应用,这些数据类型的特点是:当定义某一特定数据类型,就限定该类型变量的存储特性和取值范围。对简单数据类型来说,既可以定义单个的变量,也可以定义数组。而数组的全部元素都具有相同的数据类型,或者说是相同数据类型的一个集合。? ? 在日常生活中,我们常会碰到一些需要填写的登记表,如住宿表、成绩表、通讯地址等。在这些表中,填写的数据是不能用同一种数据类型描述的,在住宿表中我们通常会登记上姓名、性别、身份证号码等项目;在通讯地址表中我们会写下姓名、邮编、邮箱地址、电话号码、E - mail等项目。这些表中集合了各种数据,无法用前面学过的任一种数据类型完全描述,? ? 因此C引入一种能集中不同数据类型于一体的数据类型—结构体类型。结构体类型的变量可以拥有不同数据类型的成员,是不同数据类型成员的集合。7.1 结构体类型变量的定义和引用在上面描述的各种登记表中,让我们仔细观察一下住宿表、成绩表、通讯地址等。住宿表由下面的项目构成:
下载 (33.09 KB)
2010-1-26 04:17
这些登记表用C提供的结构体类型描述如下:住宿表:struct accommod{? ? char name[20]; /*姓名*/? ? char sex; /*性别*/? ? char job[40]; /*职业*/? ? int age; /*年龄*/? ? long number; /*身份证号码*/} ;成绩表:struct score{? ? char grade[20]; /* 班级*/? ? long number; /* 学号*/? ? char name[20]; /*姓名*/? ? float os; /*操作系统*/? ? float datastru; /* 数据结构*/? ? float compnet; /* 计算机网络*/} ;通讯地址表:struct addr{? ? char name[20];? ? char department[30];/* 部门*/? ? char address[30]; /*住址*/? ? long box; /* 邮编*/? ? long phone; /* 电话号码*/? ? char email[30]; /* Email */};? ? 这一系列对不同登记表的数据结构的描述类型称为结构体类型。由于不同的问题有不同的数据成员,也就是说有不同描述的结构体类型。我们也可以理解为结构体类型根据所针对的问题其成员是不同的,可以有任意多的结构体类型描述。下面给出C对结构体类型的定义形式:struct 结构体名{? ? 成员项表列;};? ? 有了结构体类型,我们就可以定义结构体类型变量,以对不同变量的各成员进行引用。7.1.1 结构体类型变量的定义? ? 结构体类型变量的定义与其它类型的变量的定义是一样的,但由于结构体类型需要针对问题事先自行定义,所以结构体类型变量的定义形式就增加了灵活性,共计有三种形式,分别介绍如下:1) 先定义结构体类型,再定义结构体类型变量:struct stu / *定义学生结构体类型* /{? ? char name[20]; /* 学生姓名*/? ? char sex; /* 性别*/? ? long num; /*学号*/? ? float score[3]; /* 三科考试成绩*/};struct stu student1,student2;/* 定义结构体类型变量*/struct stu student3,student4;? ???用此结构体类型,可以定义更多的该结构体类型变量。2 ) 定义结构体类型同时定义结构体类型变量:struct data{? ? int day;? ? int month;? ? int year;} time1,time2;? ? 也可以再定义如下变量:struct data time3,time4;? ? 用此结构体类型,同样可以定义更多的该结构体类型变量。3) 直接定义结构体类型变量:struct{? ? char name[20]; /*学生姓名*/? ? char sex; /*性别*/? ? long num; /*学号*/
您可能关注的文档
- 第七章消化系統疾病.doc
- 第七章混凝土結构工程.doc
- 第七章滾动轴承的公差与配合.doc
- 第七章煤礦安全用电.doc
- 第七章炔烴和二烯烃.doc
- 第七章煤礦常用安全监测监控系统简介.doc
- 第七章熱学错题集.doc
- 第七章營养与疾病.doc
- 第七章牙體牙髓病学题目50.doc
- 第七章現代中国的科技教育与文学艺术.doc
- 分析let s单元56ago2卷纸zheng unit56.pdf
- 塑胶材料其它分类原料pa9t 12.pdf
- md16x16数字媒体切换器设备.pdf
- 者参考项目发起人学科类型单位序列承包商修订页代码顺序典型.pdf
- 届世界天然气大会阿姆斯特丹2006add10288.pdf
- 期测试记录表每周weekly g1g6 journeys tests level 6 lesson26.pdf
- modernize-whitepaper现代化您应用程序白皮书.pdf
- anybackup产品典型案例分析.pdf
- 约克金融工程课程tfeslide32.pdf
- 广州市妇女儿童医疗中心历份教学药历01tjy.pdf
文档评论(0)