(数据结构)顺序表的定义

#include<stdio.h>	//顺序表的实现——静态分配
#define MAX 10      //定义最大长度
typedef struct List
{int data[MAX];	//用静态的数组存放数据int lenth;		//顺序表现在的长度
}List;
//顺序表的初始化
void ChuShiHua(List L)
{L.lenth = 0;	//将顺序表的长度初始化为0for (int i = 0; i < MAX; i++){L.data[i] = 0;  //将所有数据元素设置为默认初始值0}
}
int main()
{List L;
//顺序表的初始化ChuShiHua(L);return 0;
}

#include<stdio.h>
#include<stdlib.h>
#define initsize 10		//默认的最大长度
typedef struct
{int* data;int maxsize;  //顺序表的最大容量int lenth;   //目前的长度
}Seqlist;
//初始化
void ChuShiHua(Seqlist L)
{L.data = (int*)malloc(initsize*sizeof(int));   //为存放数据开辟可存放最大长度的内存空间L.lenth = 0;L.maxsize = initsize;
}
//增加动态内存的长度
void Increase(Seqlist L,int len)  //len为需要增加的长度
{int* p = L.data;	//将存放原来数据的内存空间的地址赋值给pL.data = (int)malloc((L.maxsize+len)* sizeof(int));   //给L开辟新的存放数据的内存空间for (int i = 0; i < L.maxsize; i++){L.data[i] = p[i];		//将原来的数据复制到新的内存空间}L.maxsize = L.maxsize + len;free(p);    //释放原来存放数据的内存空间
}
int main()
{Seqlist L;//初始化ChuShiHua(L);//增加动态内存的长度Increase(L,5);return 0;
}