结构体是不同数据类型变量组成的有序集合。
结构体格式
struct 标签
{
数据类型 成员变量1;
数据类型 成员变量2;
。。。。。。。。。
数据类型 成员变量n;
}
引用
struct 标签 结构体变量名;
#include <stdio.h>
struct Student //定义了一个学生信息的结构体
{
char stu_num[11];//学号
char name[10];//名字
char sex[4];//性别
int age;//年龄
float grade//分数
}; //没有定义初始变量名
void main(){
struct Student stu;//定义结构体变量方式
gets(stu.stu_num);//引用结构体成员变量方式 再结构体变量后加“.”
//就能引用结构体成员变量并给其赋值
putsa(stu.stu_num);
}
格式2
struct 标签
{
数据类型 成员变量1;
数据类型 成员变量2;
。。。。。。。。。
数据类型 成员变量n;
}结构体变量名; 再函数外定义的结构体此结构体变量为全局变量
引用
struct 标签 结构体变量名;
#include <stdio.h>
struct Student //定义了一个学生信息的结构体
{
char stu_num[11];//学号
char name[10];//名字
char sex[4];//性别
int age;//年龄
float grade//分数
}stu1={"2024080701","美羊羊","女",20,90.1}; //定义初始变量名,这个是一个全局的结构体变量
//可以再初始化结构体时可以为其赋初值
void main(){
struct Student stu=={"2024080702","沸羊羊","男",20,82.5};//定义结构体变量方式
gets(stu.stu_num);//引用结构体成员变量方式 再结构体变量后加“.”
//就能引用结构体成员变量并给其赋值
putsa(stu.stu_num);
}
格式3
struct
{
数据类型 成员变量1;
数据类型 成员变量2;
。。。。。。。。。
数据类型 成员变量n;
}结构体变量名;
#include <stdio.h>
struct //没有标签,无法再初始化该结构体
{
char stu_num[11];//学号
char name[10];//名字
char sex[4];//性别
int age;//年龄
float grade//分数
}stu1={"2024080701","美羊羊","女",20,90.1}; //定义初始变量名,这个是一个全局的结构体变量
//可以再初始化结构体时可以为其赋初值
void main(){
//struct Student stu=={"2024080702","沸羊羊","男",20,82.5};//定义结构体变量方式
//gets(stu.stu_num);//引用结构体成员变量方式 再结构体变量后加“.”
//就能引用结构体成员变量并给其赋值
//putsa(stu.stu_num);
//只有stu1可以使用
gets(stu1.stu_num);//引用结构体成员变量方式 再结构体变量后加“.”
//就能引用结构体成员变量并给其赋值
putsa(stu1.stu_num);
}
没有标签的结构体,无法再引用结构体,该结构体就只有初始化时定义的结构体可用。