结构体简介
结构体是由一批数据组合而成的结构型数据。组成结构型数据的每个数据称为结构型数据的“成员” ,其描述了一块内存区间的大小及解释意义。
结构体是C语言中一种重要的数据类型,该数据类型由一组称为成员(或称为域,或称为元素)的不同数据组成,其中每个成员可以具有不同的类型。结构体通常用来表示类型不同但是又相关的若干数据。
结构体类型不是由系统定义好的,而是需要程序设计者自己定义的。C语言提供了关键字struct来标识所定义的结构体类型。
关键字struct和结构体名组合成一种类型标识符,其地位如同通常的int、char等类型标识符,其用途就像 int 类型标识符标识整型变量一样可以用来定义结构体变量。定义变量以后,该变量就可以像定义的其他变量一样使用了;成员又称为成员变量,它是结构体所包含的若干个基本的结构类型,必须用“{}”括起来,并且要以分号结束,每个成员应表明具体的数据类型。
初识结构体
例题:
//输入两个学生的学号、成绩和姓名,输出成绩较高的学生的成绩、学号和姓名。
#include<stdio.h>
int main(void) {
struct student {
int num;
char name[20];
float score;
}student1,student2;
scanf_s("%d%s%f", &student1.num, student1.name,20, &student1.score,4);
scanf_s("%d%s%f", &student2.num, student2.name,20, &student2.score,4);
printf("成绩更好的是:\n");
if (student1.score > student2.score)
printf("%d %s %6.2f\n", student1.num, student1.name, student1.score);
else if (student2.score > student1.score)
printf("%d %s %6.2f\n", student2.num, student2.name, student2.score);
else {
printf("%d %s %6.2f\n", student1.num, student1.name, student1.score);
printf("%d %s %6.2f\n", student2.num