#include<stdio.h>
#include<malloc.h>
typedef struct
{
int data[100];
int length;
}Seqlist;
//创建表
void creatSeqlist(Seqlist *L)
{
int i, len, tmp;
printf("请输入表的长度:");
scanf("%d", &len);
L->length = 0;
printf("请输入元素:\n");
for (i = 0; i < len; i++)
{
scanf("%d", &tmp);
L->data[i] = tmp;
L->length++;
}
}
//输出表
void showSeqlist(Seqlist *L)
{
int i;
printf("\n");
printf("输出当前表的元素:");
for (i = 0; i < L->length; i++)
{
printf("%d\n", L->data[i]);
}
}
//在表中插入元素,elem是插入数,index是插入位置。
void insertSeqlist(Seqlist *L, int elem, int index)
{
if (index> L->length || index < 0)
{
printf("false,插入位置超出表长");
}
else
{
printf("在第%d位置插入%d\n", index, elem);/*后插*/
int i;
for (i = L->length; i >= index;i--)
{
L->data[i + 1] = L->data[i];
}
L->data[index] = elem;
L->length++;
}
}
//在表中删除元素,index是删除位置。
void deleteSeqlist(Seqlist *L, int index)
{
printf("您要删除第%d位的元素%d\n", index, L->data[index-1]);
if (index<L->length||index>0)
{
int i;
for (i = L->index- 1; i < L->length; i++)
{
L->data[i] = L->data[i + 1];
}
L->length--;
}
else
{
printf("要删除的位置不合法或者超出表长度\n");
}
}
//修改表中元素。
void edit(Seqlist *L,int index,int elem)
{
if (index<L->length&&index>0)
{
L->data[index - 1] = elem;
}
else
{
printf("不修改\n");
}
}
//查找表中元素。
void find(Seqlist *L, int index)
{
if (index + 1<L->length || index + 1 > 0)
{
printf("%d", L->data[index + 1]);
}
else
{
printf("莫找到");
}
}
int main()
{
Seqlist La;
creatSeqlist(&La);
showSeqlist(&La);
..............................
}