#include <stdio.h>
#include <stdlib.h>
define MAX 100
//结构体
typedef struct {
char num[8];
char name[20];
}Student;
//顺序表定义
typedef struct {
Student *elem;
int length;
}Sqlist;
Sqlist L;
//顺序表初始化
int InitList(Sqlist &L){
L.elem=new Student[MAX];//动态数组:创建了一个Student类型的动态数组并将其指针赋值给L.elem
if(!L.elem) exit(error);
L.length=0;
}
//顺序表的取值
int GetElem(Sqlist L,int i,Student &e )//取值即用e返回元素的值即用&
{
if(i<1||i>L.length) return error;//???为啥不是L.length-1
e=L.elem[i-1];
return 1;
}
//顺序表的查找
int LocateElem(Sqlist L,Student e)
{
for(int i=0;i<L.length;i++){
if(L.elem[i]==e) return i+1;
return 0;
}
//顺序表的插入
int ListInsert(Sqlist &L,int i ,Student e){//????里面的i与j的取值搞不懂
if(i<1||i>L.length+1) return error;
if(L.length==MAX) return error;
for(int j=L.length-1;j--)
L.elem[j+1]=L.elem[j];
L.elem[i-1]=e;
++L.length;
return 1;
}
//顺序表的删除
int ListDelete(Sqlist &L,int i ,Student e){
if(i<1||i>L.length) return error;
for(j=i;j<L.length-1;j++)
L.elem[j-1]=L.elem[j];
--L.length;
return 1;
}
}