C语言自定义结构体数组:实例演示与统计选票

需积分: 0 2 下载量 149 浏览量 更新于2024-07-14 收藏 3.42MB PPT 举报
在C语言基础学习中,第9章关注用户自定义数据类型,其中一个重要部分是9.2定义结构体数组。结构体数组允许程序员组织和存储具有相同数据结构的元素集合,这种集合反映了具有内在关联的不同数据项,如一个学生的信息(学号、姓名、性别、年龄、成绩和家庭地址)。结构体(struct)是一种用户自建的数据类型,它可以包含多种不同类型的成员,比如`structStudent`结构体定义了`int num`(学号)、`char name[20]`(姓名)、`char sex`(性别)、`int age`(年龄)、`float score`(成绩)以及`char addr[30]`(家庭地址)。 定义结构体数组的过程涉及以下步骤: 1. 自己建立结构体类型:首先,程序员需要声明一个结构体类型,如`struct Student`,明确各个成员的数据类型和名称。这通过`struct 结构体名 { 成员表列 };`的语法实现,例如: ```c struct Student { int num; char name[20]; char sex; int age; float score; char addr[30]; }; ``` 2. 声明结构体数组:声明结构体数组时,需要指定数组的名称、结构体类型以及数组的大小。例如,要创建一个包含3个候选人的结构体数组,可以写成: ```c struct Student candidates[3]; ``` 3. 初始化和引用结构体数组:在程序中,可以通过索引访问结构体数组中的元素,如`candidates[0].name`来获取第一个候选人的姓名。同时,结构体数组的元素可以进行初始化,例如: ```c candidates[0] = {1, "张三", 'M', 20, 85.5, "北京市"}; ``` 4. 动态数组或无固定大小:在实际应用中,也可以使用动态内存分配(如`malloc`)创建结构体数组,以适应不同数量的元素。 9.2.1小结:结构体数组是C语言中处理复杂数据结构的一种强大工具,它使得数据组织更为灵活,适合处理多个同类数据的场景。在编写统计选票程序时,结构体数组可以帮助记录每个候选人的得票情况,进而实现对数据的处理和分析。