欢迎进入我们的结构体世界吼ヾ(@^▽^@)ノ
目录
1.结构体类型组成方式
组成:struct 结构体名{ 成员表列} ;
花括号内是该结构体所包括的子项,称为结构体的成员。对各成员都应进行类型声明,即 “成员表列”(member list)也称为“域表”(field list),每一个成员是结构体中的一个域。成员名命名规则与变量名相同。
(!!!注意结构体框架是以分号为结尾的)
2.三种普通定义结构体类型
1>先声明结构体类型,再定义该类型的变量
代码展示:
2>在声明类型的同时定义变量
代码展示:
3>不指定类型名而直接定义结构体类型变量(不太常用)
3.定义结构体数组
组成:struct 结构体名 {成员表列} 数组名[数组长度];
1>结构体数组定义展示:
2>带有初值表列的结构体数组定义:
4.常见题型分享及解析
1>结构体变量的初始化和应用:
题目要求:从键盘输入两个学生的学号,姓名和成绩(整数),分别存入结构体中,输出成绩较高的学生的学号,姓名和成绩。
代码展示:
运行结果:
总结:这是结构体类型的一个简单应用,运用了结构体定义类型的第二个方式,在运用 if-else 语句对其比较输出。这只是简单的比较两个同学的成绩,我们以此为开始,接下来我们会学到多个同学之间的成绩有高到低的输出排序问题;
2>结构体排序
题目要求:有n
个学生的信息(包括学号,姓名,成绩),要求按照成绩的高低顺序输出学生的信息。
代码展示:
运行结果:
总结:本题代码是对学生成绩的排序,这是一个结构体数组加选择排序的综合应用,在对数据进行排序无论是在函数还是指针或者数组当中我们都应该采用选择排序和其他类型的排序方法对其进行排序。
3>结构体应用于生活(选民选票问题)
题目要求:有三个候选人,每个选民只能投一票,写一程序,用结构体存储数据,求出得票结果。
三个候选人为"Li
", "Zhang
","Sun
"
代码展示:
运行结果:
总结:本题是生活中常见的选票为案列,是一个结构体数组加字符串比较的综合应用,此题是对三个人选举为例,我们还可以推广到更多人数参加的选举。
over~以上是我们的全部内容吼~