原创

数据结构(顺序表取长度、定位和取元素)

上一节我们写到了初始化数据表(顺序表)的初始化,这节我们学习求表的长度、取元素和定位

上节课的代码:

#include<stdio.h>;
#include<string.h>;
#define DATATYPE1 int
#define MAXSIZE 100
typedef struct
{
int id[MAXSIZE];
int len;
}Student,*PStudent;
void INITIATE(PStudent L)
{
L->len=0;
return;
}/*初始化线性表*/

在下面插入:、
int LENGTH(PStudent L)/*PStudent是我们定义的结构体类型*/
{
return(L->len);/*因为我们在结构体中有个定义长度的变量,现在直接就可以弄出来咯。不过是int的*/
}/*这样就直接求出结构体的长度了。*/
/*求线性表的长度*/

上面这几行代码是参照书上的。
下面是取元素的代码:
int GET(PStudent L,int i)/*两个形参,一个是我们自己定义的类型,一个是int类型*/
{
if(i>1 || i<L->len)/*加上判断,如果要取的元素小于1或者大于结构体长度,就返回null*/
return(NULL);
else
return(L->id[i-1]);/*否则的话就将这个元素取出来,返回回去。。*/
}
上面也是参照书上写的。
下面是定位:
int LOCATE(PStudent L,int x)/*定义两个形参,一个是自定义类型,一个是int*/
{
int k;/*定义一个K*/
k=1;/*将K赋值为1*/
while(k<=L->len&&L-》id[k-1]!=x)/*遍历整个结构体元素*/
k++;
if(k<=L->len)/*K小于或者等于结构体的长度*/
return(k);/*返回K,就是定位成功啦!*/
else
return(0);/*定位失败返回0*/
}

这几个代码都是有典型性的。 好好学习天天向上!!!!

温馨提示:
本文最后更新于 2020年08月19日,已超过 687 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我
正文到此结束
该篇文章的评论功能已被站长关闭
本文目录