C语言第八天----------------结构体与算法结构

结构体:

C语言有三大基本类型:整型,字符型,浮点型
定义结构体:用户“自定义”新的“数据类型”

    struct 类型名
 {
 属性1;
 属性2;
 ...
};
注:定义结构体类型并不是定了变量,而是注册了一个新的数据类型
嵌套结构体:结构体中可以包含结构体
struct 类型名
{
	属性1
	struct 类型 变量名;
};

定义结构体变量:分配空间
struct 类型 变量名;
定义结构体指针变量:指针变量必须指向一个实体空间地址
struct 类型* 指针变量名;

注:编译器在分配结构体大小空间时,默认大字节对齐(提高访问速度)
例如:
struct student                                  struct student
{												{
		char name[10];								char name[10];
		char sex;									int  height; 
		int height;									char sex;
}												}
						都是按照int分配空间 
左边一个结构体占16个字节(4个int)。       右边占20个字节(5个int)。

初始化结构体变量:在定义变量同时赋初值
struct 类型 变量名={属性1,。。。};
同类型实体之间可以互相赋值
struct student s1,s2;
s2=s1
引用结构变量:不能整体引用,只能引用成员属性 (名字,指针)
变量.成员
指针->成员

注:  . 优先级高于 *	

结构体与数组的关系:
类型 数组名[长度]={};
引用数组内容: 下标法指针法

数据结构:数据的一种结构形式

数据结构分为逻辑结构,物理结构

逻辑结构:数据之联系(表现)(学生关系表) ( 脑中想象的情况 )
	1、散列:元素之间没有联系
	2、线性表:每个元素存在1:1的联系,且每个元素只有一个直接前驱和一直直
	接后驱( 头结构没有直接前驱和尾节点没有直接后驱)
	3、树形结构:元素存在1:N的联系 (文件系统)
	4、图形结构:元素存在N:N的联系(高铁组网)
物理结构:数据在内存的一种表现形式(顺序表,链表) ( 内存中实际的情况)
	1、顺序表:所有数所紧挨在一起(数组)   
			缺点:在删除元素和增加操作麻烦   优点:检索简单(下标法)
	2、链表:所有元素没有紧挨在一起,但每个元素有一个联系
			优点:在删除元素和增加操作麻烦    缺点:检查麻烦 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值