#include<stdio.h>
#include<stdlib.h>
#define Size 5 //定义的最大长度
线性表的定义
typedef struct List{
int *data;//表中数据
int length;//表当前长度
int size;
}list;
线性表的初始化
list initSize(){
list l;
l.data = (int *)malloc(Size * sizeof(int));
if(!l.data){
printf("初始化失败");
exit(0);
}
l.length=0;
l.size=Size;
return l;
}
线性表的输出(打印)
void outList(list l){
for(int i=0;i<l.length;i++){
printf("%d ",l.data[i]);
}
printf("\n");
}
线性表插入一个数据
//插入一个数据
bool ListInsert(list &l,int i,int e){
if(i<1||i>l.length+1){
return false;
}
if(l.length>=Size){
return false;
}
for(int j=l.length;j>=i;j--){
l.data[j]=l.data[j-1];
}
l.data[i-1]=e;
l.length++;
return true;
}
main函数
int main(){
list l=initSize();
for(int i=1;i<=Size-1;i++){
int m;
scanf("%d",&m);
l.data[i-1]=m;
l.length++;
}
printf("输出元素为:\n");
outList(l);
ListInsert(l,2,5);
printf("插入后输出元素为:\n");
outList(l);
return 0;
}