结构体数组Stud各元素在内存中顺序存放 即第(1si≤6个学生对应的元素Stud存放 在第i+1个学生对应的元素 Stud[i+1之 前 Stud[t+1正好在Stud[之后
结构体数组Stud各元素在内存中顺序存放, 即第i(1≤i≤6)个学生对应的元素Stud[i]存放 在第i+1个学生对应的元素Stud[i+1]之 前,Stud[i+1]正好在Stud[i]之后
存放学生表的链表的结点类型 Stud Type定义为 typedef struct studnode int no? 存储学号 char name8];/存储姓名* char sex2];/存储性别* char class4l;/存储班号* struct studnode next 八存储指向下一个学生的指针* 3 StudType i
存放学生表的链表的结点类型StudType定义为: typedef struct studnode { int no; /*存储学号*/ char name[8]; /*存储姓名*/ char sex[2]; /*存储性别*/ char class[4]; /*存储班号*/ struct studnode *next; /*存储指向下一个学生的指针*/ } StudType;
head-1张斌|男|9901 8刘丽女9902 学生表构成的 34李英女9901 链表如右图所示 其中的head为 20陈华男|9902 第一个数据元素 12王奇男|99011 的指针。 26董强男9902 王萍女9901∧ 学生表构成的链表
head 1 张斌 男 9901 8 刘丽 女 9902 34 李英 女 9901 20 陈华 男 9902 12 王奇 男 9901 26 董强 男 9902 5 王萍 女 9901 ∧ 学生表构成的 链表如右图所示。 其中的head为 第一个数据元素 的指针。 学生表构成的链表
对于“学生表”这种数据结构可以进行 一系列的运算例如增加一个学生记录、删除 一个学生记录、查找性别为“女”的学生记 录、查找班号为“9902”的学生记录等等。 从前面介绍的两种存储结构看到,同样的运 算在不同的存储结构中,其实现过程是不同的
对于“学生表”这种数据结构,可以进行 一系列的运算,例如,增加一个学生记录、删除 一个学生记录、查找性别为“女”的学生记 录、查找班号为“9902”的学生记录等等。 从前面介绍的两种存储结构看到,同样的运 算,在不同的存储结构中,其实现过程是不同的
例如,查找学号为20的学生的姓名 对于Stud数组,可以从Stud开始比 较Stud0no不等于20,再与Sud[.no比较, 直到Sud3no等于20返回Stud3]name 对于head为首结点指针的链表,从head所指 结点开始比较,head->no不等于20从它的nex得 到下一个结点的地址,再与下一个结点的not比 较,.到某结点的no域等于20返回其name域
例如,查找学号为20的学生的姓名: 对 于 Stud 数 组 , 可 以 从 Stud[0] 开始比 较,Stud[0].no不等于20,再与Stud[1].no比较,…, 直到Stud[3].no等于20,返回Stud[3].name。 对于head为首结点指针的链表,从head所指 结点开始比较,head->no不等于20,从它的next得 到下一个结点的地址,再与下一个结点的no域比 较,…,直到某结点的no域等于20,返回其name域