结构体专题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了结构体专题相关的知识,希望对你有一定的参考价值。

===定义结构体的两种方法:=========================================

 

第一种:

struct 结构体名{
成员列表
}变量名列表;


第二种://省略了结构体名,直接定义结构体变量

struct{
成员列表
}变量名列表;

 

===举例:===========================================

 

第一种定义方法

(1)声明结构体类型

struct 高三班级 {

语文课代表

数学课代表

……

历史课代表

}

 

(2)定义结构体变量

struct 高三班级 高三1班 ,高三2班;

或者直接写成

struct 高三班级 {

语文课代表

数学课代表

……

历史课代表

}高三1班 ,高三2班;

 

(3)使用

 高三1班.语文课代表=XXX;

 高三1班.数学课代表=XXX;

......

--------------------------

第二种定义方法

(1)声明结构体类型

struct  {

语文课代表

数学课代表

……

历史课代表

}高三1班 ,高三2班;

 

(2)使用

 高三1班.语文课代表=XXX;

 高三1班.数学课代表=XXX;

===typedef用法============================================================

定义:申明新的内型名代替已有的内型名

也就是typedef ABCD  XYZ,这样XYZ就完全替代了ABCD了

------------------

typedef  struct  {       //注意此处不再有  高三班级(我也不知道为什么省略,采用了方式二定义?还是为了C语言的简洁?)

语文课代表

数学课代表

……

历史课代表

}   SBATNND

此时SBATNND就完全代替了整个结构体,直接定义变量

SBATNND  高三1班 ,高三2班;

就可以了,等价于

struct  {

文课代表

数学课代表

……

历史课代表}   高三1班 ,高三2班;

---------------------------------为什么就不能带结构体名字(高三班级)----------------------慢慢找原因

要不然也就等价于

struct 高三班级 高三1班 ,高三2班;

 SBATNND  就等价于 struct 高三班级

以上是关于结构体专题的主要内容,如果未能解决你的问题,请参考以下文章

ZZNUOJ_用C语言编写程序实现1188:选票统计(结构体专题)(附完整源码)

ZZNUOJ_用C语言编写程序实现1181:谁的年龄最小(结构体专题)(附完整源码)

ZZNUOJ_用C语言编写程序实现1184:平面点排序(结构体专题)(附完整源码)

ZZNUOJ_用C语言编写程序实现1180:成绩统计(结构体专题)(附完整源码)

ZZNUOJ_用C语言编写程序实现1190:查询记录(结构体专题)(附完整源码)

ZZNUOJ_用C语言编写程序实现1192:删除记录(结构体专题)(附完整源码)