#include <stdlib.h>
#include <stdio.h>
#define ListMaxSize 10
#define ListInsertSize 10
#define false 0
#define true 1
typedef int elemtype;
typedef char status;
typedef struct
{
elemtype *data;
int length;
int listsize;
}SqList;
//初始化顺序表
status InitList(SqList *L)
{
L->data=(elemtype *)malloc(ListMaxSize *sizeof(elemtype));
L->length=0;
L->listsize=ListMaxSize;
return true;
}
//顺序表的插入
status ListInsert(SqList *L,int i,elemtype e)
{
if(i<1||i>L->length+1)
return false;
if(L->length>=L->listsize)
return false;
for(int j=i;j<L->length;i--)
L->data[j]=L->data[j-1];
L->data[i-1]=e;
L->length++;
return false;
}
//打印顺序表
status ptintList(SqList L)
{
if(L.length==0)
printf("顺序表为空");
for(int i=0;i<L.length;i++)
printf("%d\n",L.data[i]);
}
//顺序表删除
status ListDelete(SqList *L,int i)
{
if(i<1||i>L->length)
return false;
for(int j=i;j<L->length;j++)
L->data[j-1]=L->data[j];
L->length--;
return true;
}
//输入值,返回位置
status LocatElem(SqList L,elemtype e)
{
for(int i=0;i<L.length;i++)
if(L.data[i]==e)
return i+1;
//printf("%d\n",i+1);
}
//输入位置,返回值
status GetElem(SqList L,int i,elemtype e)
{
if(i<1||i>L.length)
return false;
//return L.data[i-1];
printf("%d\n",L.data[i-1]);
}
int main()
{
SqList L;
int e;
InitList(&L);
ListInsert(&L,1,3);
ListInsert(&L,2,6);
ListInsert(&L,3,5);
ListInsert(&L,4,9);
}