- 1、本文档共45页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言程序设计第7章结构体与链表枚举类型.
链表 例7-8 建立5个员工的链表,并对链表进行遍历、查找、插入和删除操作。 4、增加某个结点 s=(Employee*)malloc(sizeof(Employee)); s-ID=id; s-salary=sala; s-next=p-next; p-next=s; C语言程序设计 第7章 结构体与链表 第7章 结构体与链表 学习目的与要求: 理解并掌握结构体的定义和应用 掌握类型定义符typedef的使用方法 理解并掌握链表的定义与使用方法 了解共用体的定义及使用方法 了解枚举变量的使用方法 基本内容 链表 结构体 类型定义符typedef 本章小结 枚举类型 共用体 结构体 结构体是程序员根据需要定义的一种数据类型。组成结构体的数据称为结构体的成员,这些成员来共同描述一个相关的对象。 struct structureName{ type member1; type member2; … }; struct Person{ char name[20]; char sex; int age; int height; }; 结构体 由于结构体是程序设计者声明的一种数据类型,是对具体实例的抽象,所以在声明一个结构体时,不要实例化,即不要对成员赋初值。 struct Point { int x=0; //error 无法存储x. int y=0; //error }; 结构体 结构体成员除基本数据类型外,还可为指针或结构体类型。 struct Date{ int year; int month; int day; }; struct Person1{ char *name; //指针类型 struct Date birthday; //结构体类型 int height; }; 结构体类型变量的定义 (1)先定义结构体类型,再定义结构体变量。 struct Person ps1,ps2; (2)在定义一个结构体类型的同时,定义结构体变量。 struct Point{ int x; }pt; (3)直接定义结构体变量,省略结构体名称。 struct { int x; }pt; 结构体类型变量的定义 (1)结构体类型与结构体变量是两个不同的概念,只能对结构体变量赋值、存取或运算,但不能对结构体类型赋值、存取和运算。 (2)在编译时,系统根据结构体所有成员的大小只对变量分配存储空间,而声明类型时不分配空间。 (3)结构体类型中的成员名可以与程序中的变量名同名,但它们表示不同的对象。例如在结构体struct Person中的成员“age”与程序中的变量“age”名字相同,意义不同。 结构体成员的访问 结构体变量名.成员名 struct Point pt; pt.x=0; //给结构体变量pt的成员赋值 printf(x=%\n, pt.x); //输出x的值 结构体成员的访问 例7-1 对一个人的信息(姓名和生日)进行操作。 解题思路:首先定义生日结构体类型,包括出生年、月、日,再定义“人”的结构体类型,包括姓名和生日。定义“人”结构体变量,对其进行赋值并输出。 #includestdio.h #includestring.h struct Date{ int year; int month; int day; }; struct Person1 { char name[20]; struct Date birthday; }; struct Person1 ps1={Zhang,{1988,11,20}},ps2; printf(输入相关信息(姓名和出生年月日):\n); scanf(%s,ps1.name); //输入姓名 scanf(%d%d%d,ps1.birthday.year, ps1.birthday.month, ps1.birthday.day); ps2 =ps1; strcpy(ps2.name,李四); ps2.birthday.day+=8; printf(输出人的相关信息:\n); printf(姓名:%s\n生日:%d-%d-%d\n,ps1.name,ps1.birthday.year, ps1.birthday.month,ps1.birthday.day); printf(
您可能关注的文档
- 2017大型地产公司产品线梳理及考察方案..ppt
- 2017年9月长沙经沣中部金谷营销策划案..ppt
- 2017年9月长沙经沣中部金谷营销策划案aaci..ppt
- 2017年化学高考总复习第一单元第2课时石油炼制乙烯课件..ppt
- 2017年北京公园项目全案营销推广节点及费用预算..ppt
- 2017年安全技术资料十三项培训演示..ppt
- 2017年工厂安全用电员工培训讲座..ppt
- 2017年秋人教版道德与法治八年级上册第一单元第二课第..ppt
- 2017年第一季度中国共享充电宝市场分析报告..ppt
- 2017版《新步步高大二轮专题复习与增分策略(通用)地理》专题课件 突破4 区域分析与区域可持续发展 第1讲 区域特征分析与地理信息技术 [..ppt
最近下载
- 浅谈基层工会在新形势下如何做好职工的思想政治工作.docx VIP
- 中级经济师考试题(卷)库1000题.doc
- DG∕T 015-2021 玉米收获机(农机推广鉴定大纲).pdf
- 标准图集-05S506-1 自承式平直型架空钢管.pdf
- 新人教版七年级语文上册期中复习.ppt VIP
- 部编物理八年级上册专题7机械运动与声现象计算压轴培优专题训练(解析版)含答案.pdf VIP
- 市政道路工程分项工程施工方案及关键施工技术、工程重点难点方案.docx
- YB-T 5106-2009 黏土质耐火砖.pdf VIP
- 风电场安全验收评价现场安全检查表.docx VIP
- 江苏 2023年自考公共课考试:行政法学历年真题汇编(共135题).pdf VIP
文档评论(0)