272(5 复杂数据类型及排序 第十一章 Ⅴ ersion3.0 CHA
Version 3.0 复杂数据类型及排序 第十一章
回顾 ■上一节课主要讲解了以下内容: 口字符串变量和常量 字符串指针 ■执行字符串的输入喻输出操作 各种字符串函数 口如何将数组作为参数传递给函数 如何将字符串用作函数参数 北大青鸟
2 回顾 ◼ 上一节课主要讲解了以下内容: ◼ 字符串变量和常量 ◼ 字符串指针 ◼ 执行字符串的输入/输出操作 ◼ 各种字符串函数 ◼ 如何将数组作为参数传递给函数 ◼ 如何将字符串用作函数参数
目标 ■定义结构体 明结构体变量 ■解释如何初始化结构体 解释如何将结构体作为参数传递给数 吏用结构体数组 青构体数组的初始化 解养 ede关键 解释如何使用插入排序法和冒泡排序对 组进行排序 北大青鸟
3 目标 ◼ 定义结构体 ◼ 声明结构体变量 ◼ 解释如何初始化结构体 ◼ 解释如何将结构体作为参数传递给函数 ◼ 使用结构体数组 ◼ 解释结构体数组的初始化 ◼ 解释 typedef 关键字 ◼ 解释如何使用插入排序法和冒泡排序法对 数组进行排序
结构体 结构体由许多组织在一起的数据项组成, 这些数据项不需要属于同一类型 结构体可以容纳需要的任意多数据项 英雄 姓名 等级 武功 北大青鸟
4 结构体 ◼ 结构体由许多组织在一起的数据项组成, 这些数据项不需要属于同一类型 ◼ 结构体可以容纳需要的任意多数据项 姓名 等级 武功 英雄
结构体的使用 定义结构体元素 ■声明结构体变量 ■结构体赋值 结构体元素的引用 北大青鸟
5 结构体的使用 ◼ 定义结构体元素 ◼ 声明结构体变量 ◼ 结构体赋值 ◼ 结构体元素的引用
定义结构体元素 结构体定义形成了创建结构体变量的模板 结构体中的变量称为结构体元素或结构体成 示例: 英雄 struthers char 姓名 name[111 int grade; 等级 int power, 武功 float salary: 北大青鸟
6 定义结构体元素 ◼ 结构体定义形成了创建结构体变量的模板 ◼ 结构体中的变量称为结构体元素或结构体成 员 ◼ 示例: struct HERO { char name[11]; int grade; int power; float salary; }; 姓名 等级 武功 英雄
声明结构体变量 ■一日定义了结构体,就可以声明一个或多个该类型的变量 示例: struct hero hI; 这条语句将会预留足够的内存来存放该结构体中的所有项 struct HERO char name[111: struct HERO h int grade, struct HERO h2. int power struct HERO h3, h4: float salar h1,h2; 北大青鸟
7 声明结构体变量 ◼ 一旦定义了结构体,就可以声明一个或多个该类型的变量 ◼ 示例:struct HERO h1; ◼ 这条语句将会预留足够的内存来存放该结构体中的所有项 struct HERO { char name[11]; int grade; int power; float salary; } h1, h2; struct HERO h1; struct HERO h2; struct HERO h3, h4; 定义时,声明结构体变量 先定义,后声明
初始化结构体 ■与变量和数组一样,结构体变量也可以在声明时初始化 ■HERO类型的变量h1和h2可以按照下面的方式进行声明 和初始化: struct hero char name[11] int grade; int power float salary; struct HERo h1={“张飞”,3,99,15.5}; struct hero h2={“关羽”,3,100,359} 北大青鸟
8 初始化结构体 ◼ 与变量和数组一样,结构体变量也可以在声明时初始化 ◼ HERO 类型的变量 h1 和 h2 可以按照下面的方式进行声明 和初始化: struct HERO { char name[11]; int grade; int power; float salary; }; struct HERO h1 = {“张飞”, 3, 99,15.5}; struct HERO h2 = {“关羽”, 3, 100, 35.9};
结构体中使用的赋值语句2-1 可以使用一条简单的赋值语句将一个结构 体变量的值赋给另一个相同类型的结构体 变 ■例如,如果h1和h2是同一类型的结构体 变量,那么下列语句是有效的 h2=h1 北大青写
9 结构体中使用的赋值语句2- 1 ◼ 可以使用一条简单的赋值语句将一个结构 体变量的值赋给另一个相同类型的结构体 变量 ◼ 例如,如果 h1 和 h2 是同一类型的结构体 变量,那么下列语句是有效的: h2 = h1;
访问结构体元素 这个运算符也称为成员还算)来引用, 告构体元素通过使用点运算 法 构体变量名元素名 口示例: scanf( os",hl. name) 北大曹
10 访问结构体元素 ◼ 结构体元素通过使用点运算符(.)来引用, 这个运算符也称为成员运算符 ◼ 语法: 结构体变量名.元素名 ◼ 示例: scanf("%s", h1. name);