数据库 静态顺序

#include <stdio.h>
#define MaxSize 5
typedef struct 
{
  int data[MaxSize];
  int length;
}SqList;

//初始化
int InitList(SqList *L){
  for(int i=0;i<MaxSize;i++)
  L->data[i]=0;
  L->length=0;
  printf("初始化成功\n");
  return 0;
}
//建表,并且输入表内的值
SqList Creat(){
    printf("请输入表内元素(每个数字按空格相隔,以输入-1为终止条件):");
    SqList  L;
    InitList(&L);
    int e;
    int i=0;
    scanf("%d",&e);
        while(e!=-1){
        L.data[i]=e;
        scanf("%d",&e);

        i++;
        if(i>=MaxSize){
            printf("超出数组容量");
            break;
        }
        L.length=i;
        }
     printf("表已经输好了\n");
     return L;
}
 //在L中第i个位置之前查人新的数据元素e,L的长度加1                                
int ListInsert_Sq(SqList *L,int i,int e){
    if(i<0||i>L->length){
        printf("超出数组容量");
       return 0;
    }else{
        for(int j=L->length;j>=i;j--){
           L->data[j]=L->data[j-1];
        }
           L->data[i-1]=e;
           L->length++;
    }
    return 0;
}  
 //打印表
void show(SqList L){
    for(int i=0;i<L.length;i++){
       printf("%d ",L.data[i]);    
    }
     printf("\n ");
}       
//删除L的第i个数据元素,并用e返回其值,L的长度减一                   
int ListDelete_Sq(SqList *L,int i,int &e){
    if(i<0||i>L->length-1){
        printf("超出数组容量");
        }else{
        e=L->data[i-1];
        for(int j=i;j<L->length;j++){
            L->data[j-1]=L->data[j];
        } 
         
          L->length--;
        }
        return 0;
}
/*int GetElem_Sq(Sqlist L,int i,int *e);       //用e返回第i个元素的值

int ListEmpty(Sqlist L);                     //查看表是否为空函数
void LocateElem(Sqlist L);                      //按值查找函数*/


int main(){
     SqList  L=Creat();
     show(L);
     ListInsert_Sq(&L,1,9);
     show(L);
     int e=-1;
     ListDelete_Sq(&L,1,e);
     show(L);
     printf("%d",e);
   return 0;
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值