程序逻辑与C语言:第9章 用户自己建立数据类型.ppt
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
程序逻辑与C语言:用户自己建立数据类型 在C语言中,用户可以自己建立数据类型,以满足不同的应用需求。本章节将详细介绍用户自己建立数据类型的方法和应用。 9.1 定义和使用结构体变量 结构体是一种复合数据类型,由多个基本数据类型组成。用户可以根据需要,定义自己的结构体类型。例如,定义一个学生的结构体类型: ```c struct Student { int num; char name[20]; char sex; int age; float score; char addr[30]; }; ``` 在上面的例子中,结构体类型`Student`由六个成员组成:`num`、`name`、`sex`、`age`、`score`和`addr`。每个成员都有其自己的数据类型。 定义结构体类型后,可以根据需要,定义结构体类型变量。例如: ```c struct Student student1, student2; ``` 这里定义了两个结构体类型变量`student1`和`student2`,它们属于`Student`结构体类型。 9.1.1 自己建立结构体类型 用户可以根据需要,自己建立结构体类型。例如,定义一个教师的结构体类型: ```c struct Teacher { int num; char name[20]; char sex; int age; float salary; char addr[30]; }; ``` 这里定义了一个教师的结构体类型`Teacher`,由六个成员组成:`num`、`name`、`sex`、`age`、`salary`和`addr`。 9.1.2 定义结构体类型变量 定义结构体类型变量有三种方法: 1. 先声明结构体类型,再定义该类型变量: ```c struct Student { int num; char name[20]; char sex; int age; float score; char addr[30]; }; struct Student student1, student2; ``` 2. 在声明类型的同时定义变量: ```c struct Student { int num; char name[20]; char sex; int age; float score; char addr[30]; } student1, student2; ``` 3. 不指定类型名而直接定义结构体类型变量: ```c struct { int num; char name[20]; char sex; int age; float score; char addr[30]; } student1, student2; ``` 9.2 使用结构体数组 结构体数组是一种特殊的数组,每个元素都是一个结构体类型变量。例如: ```c struct Student students[5]; ``` 这里定义了一个结构体数组`students`,它包含五个元素,每个元素都是一个`Student`结构体类型变量。 9.3 结构体指针 结构体指针是一种特殊的指针,它指向一个结构体类型变量。例如: ```c struct Student *p; ``` 这里定义了一个结构体指针`p`,它指向一个`Student`结构体类型变量。 9.4 用指针处理链表 链表是一种特殊的数据结构,它由多个节点组成,每个节点都包含一个数据域和一个指针域。链表可以用指针来处理。例如: ```c struct Node { int data; struct Node *next; }; ``` 这里定义了一个链表节点类型`Node`,它包含一个数据域`data`和一个指针域`next`。可以用指针来处理链表。 9.5 共用体类型 共用体类型是一种特殊的数据类型,它可以存储不同的数据类型。例如: ```c union { int i; float f; char c; } u; ``` 这里定义了一个共用体类型`u`,它可以存储整数、浮点数或字符型数据。 9.6 使用枚举类型 枚举类型是一种特殊的数据类型,它可以存储一组固定的常量值。例如: ```c enum Color { Red, Green, Blue }; ``` 这里定义了一个枚举类型`Color`,它可以存储三种颜色值:红色、绿色和蓝色。 9.7 用typedef声明新类型名 typedef是一种声明新类型名的方法。例如: ```c typedef struct { int num; char name[20]; char sex; int age; float score; char addr[30]; } Student; ``` 这里定义了一个新的类型名`Student`,它属于一个结构体类型。 用户自己建立数据类型是C语言中一个重要的概念,它可以满足不同的应用需求。通过定义结构体类型、结构体数组、结构体指针、链表、共用体类型、枚举类型和typedef声明新类型名,可以实现复杂的数据处理和存储。
- 粉丝: 25
- 资源: 3万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助