- 1、本文档共35页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[经济学]第7章 结构体与链表
第3章 CGI概念和PHP程序设计基础 80- 第7章 结构体与链表 7.1 结构体的引出7.2 结构体变量7.3 结构体数组7.4 结构体类型的指针变量7.5 结构体与函数7.6 链表7.7 共用体与枚举类型7.8 类型定义符typedef的用法 7.1 结构体的引出 在程序里表示一个人(学号、姓名、年龄、……),怎么表示? 想表示多个人呢? 如何用计算机程序实现下述表格的管理? 简单变量(整型、字符型、实型) 数组 具有相同类型的变量组成的集合 指针 用于动态分配,参数传递 结构体 由不同类型的变量组成。 每个变量称为结构体的成员项。 这些变量在内存中占据连续的空间。便于有规则的处理,也充分体现了数据之间的内在联系。 结构体类型的定义 struct 结构体类型名 { 类型名1 成员名表1; 类型名2 成员名表2; … 类型名n 成员名表n; } 结构体类型说明 结构体类型: 结构体的类型举例 例:某人生日(1983年12月2日) 结构体类型所占的字节 所占字节:是结构体中每个成员所占存储空间之和。 结构体类型所占的字节 结构体的嵌套 结构体的嵌套:在结构体中又包含一个结构体。 7.2 结构体变量——定义 1.先定义好结构体类型,再定义变量 struct student { char name[20]; char sex; float sc[3]; }; struct student s , t; 2.定义结构类型的同时定义变量 3.说明一个无名结构体类型,直接进行变量的定义 结构体变量的引用和初始化 结构体变量名.成员项名 【例7.1】对结构体变量赋值并输出其值。 结构体变量初始化 同类型结构体变量之间的赋值 例7.2. 结构体变量的初始化。 struct date { unsigned int year; unsigned int month; unsigned int day;}; struct person { char name[12]; struct date birthday; float wage;}; void main() { struct person a={ 李立, 1975, 8, 12, 3256.78}; struct person b={ 张红 }; printf( 姓名:%s, , b.name); printf( 出生日期: %d.%d.%d, , b.birthday.year, b.birthday.month, b.birthday.day); printf( 工资:%8.2f\n , b.wage); b.birthday=a.birthday; b.wage=3186.45; printf( 姓名:%s, , b.name); printf( 出生日期:%d.%d.%d, , b.birthday.year, b.birthday.month, b.birthday.day); printf( 工资:%8.2f\n , b.wage); } 对学生问题的处理 7.3 结构体数组 7.3.2 结构体数组的初始化 struct stu { int num; char name[12]; int score; }; struct stu st[3]={{2009001, 赵岩, 86}, {2009002, 王洋, 92},{2009003,李玲, 78}}; 7.3.3 结构体数组的使用 7.4 结构体类型的指针变量 【例7.4】结构体指针变量的使用。 #includestdio.h struct stu { int num; char name[20]; int score; }; void main() { struct stu boy1={2009001,赵岩, 86},*p; p=boy1; printf(学号=%d\n, boy1.num); printf(姓名=%s\n, (*p).name); printf(成绩=%d\n, p-score ); } 7.4.2 指向结构体数组的指针 1. 定义 struct student a[3] , *p ; 2. 使用 for (
文档评论(0)