复习数据结构,写了一段顺序表的代码
定义一个头文件header.h 来描述表结构
#define MaxSize 100
//header 头文件
typedef struct
{
int data[MaxSize]; //最多存放数据MaxSize
int length; //元素个数
}SeqList;
#include "stdio.h"
#include "header.h"
//增加操作
// x 为元素 i 是下标
void Inset (SeqList *L,int x ,int i){
int q ; //
if (L->length == MaxSize) printf("OverFlow \n");
if(q <0|| q >L->length-1) printf("Not exist! \n");
for(q = L ->length -1 ; q>= i ; q--)
{
L->data[q+1] = L->data[q] ;
}
L ->data[i] = x ;
L->length++;
}
//删除操作
//i 删除元素的下标
void del(SeqList *L ,int i){
int q ;
if (i < 0 || i> L->length-1) printf("Not Exist! \n");
for(q =i;q <L->length-1;q++)
{
L->data[q] = L->data[q+1];
L->length --;
}
}
int main(){
int i ;
int n =5;
SeqList s = {{1,2,3,4,5},n};
//Inset(&s , 99 ,2);
del(&s,3);
for(i=0 ;i<s.length;i++)
{
printf("%d \n",s.data[i]);
}
}