C语言实现--顺序表(顺序存储结构)

写在前面:


        关于“顺序表”的分析等,如果存在疑惑,想要探究过程,请读者参见文章:

                                   “顺序表(详解)- C++(线性表顺序存储结构)”

        之后再回到这个页面看C语言实现“链队列”, 为提高效率在这里不再重复进行分析介绍,C++与C语言分析过程相同,两者代码实现主要区别在于“编程语法”上,读者可以对比两篇文章中的代码部分体会。

代码实现


        说明:采用C语言,编译环境为DevC++。

//导入头文件
#include
#include

//定义线性表
typedef struct{
	int *elem;//数据元素
	int length;//当前长度
	int listsize;//存储容量
}SqList;

//初始化线性表
void InitSqList(SqList &L){
	L.elem=(int *) malloc(50*sizeof(int));
	L.length=0;//空表
	L.listsize=50;
}

//创建顺序表 
void CreatSqList(SqList &L){
	 int i=0;
	 printf("请输入数据,以-10000结束:\n");
	 scanf("%d",&L.elem[i]);
	 while(L.elem[i]!=-10000 && L.length=q;p--)
		*p=*(p-1);
	++L.length;//插入前 表长+1 
	*(q)=h;
	return 0;//返回0表示成功
}

//删除
int DeleteSqList(SqList &L,int m){
	int *p;
	int *q;
	p=&(L.elem[L.length]);
	q=&(L.elem[m]);
	for(q;q

运行结果

C语言实现--顺序表(顺序存储结构)_第1张图片

写在最后:

        读两遍下来,如果仍然有不清楚的地方,可在评论区留言。

        如果你有其他感到困惑的问题,欢迎留言。

你可能感兴趣的:(C语言编程实例,算法,数据结构,算法,数据结构,c语言,开发语言,链表)