#include<stdio.h>
#define maxsize 10
void insertelem(int sqlist[],int *len,int i,int x){
int t;
if(*len==maxsize||i<1||i>*len+1){//非法提示
printf("this insert is illegal");
return;
}
for(t=*len;t>=i-1;t--){ //找到这个位置
sqlist[t+1]=sqlist[t]; //将这个位置后的元素全部后移
}
sqlist[i-1]=x;
*len=*len+1;
}
void delelem(int sqlist[],int *len,int i){
int j;
if(i<1||i>*len){//非法提示
printf("the del is illegal");
return;
}
for(j=i;j<=*len-1;j++)//元素前移
sqlist[j-1]=sqlist[j];
*len=*len-1;
}
main(){
int sqlist[maxsize];
int len;
int i;
printf("please input six integer number");//数入数字
for(i=0;i<6;i++)
scanf("%d",&sqlist[i]);
len=6;
for(i=0;i<len;i++)
printf("%d",sqlist[i]);//输出目前数字
printf("\nthe spare length is %d\n",maxsize-len);
insertelem(sqlist,&len,3,0);//做插入函数
for(i=0;i<len;i++)
printf("%d",sqlist[i]);
printf("\nthe spare length is %d\n",maxsize-len);
insertelem(sqlist,&len,11,0);//在做插入函数
delelem(sqlist,&len,6);//删除一个数据
for(i=0;i<len;i++)
printf("%d",sqlist[i]);
printf("\nthe spare length is %d\n",maxsize-len);
}
顺序表是在内存中开辟一段连续的内存空间,可以静态和动态的生成顺序表
这次写的是静态的下次更新动态的顺序表