#文章为入门菜鸟在学习过程中的笔记,望各位大佬能帮忙指出错误。感激万分
#include#include #define TRUE 1 #define ERROR 1 #define FALSE 0 #define OK 1 #define INFEASIBLE -1 #define OVERFLOW -2 typedef int Status; #define InitSize 5 //初始化分配空间为5 // 声明一个结构体表示顺序表 typedef struct{ int *data; int length; int listsize; }SqList; // 初始化顺序表 Status InitList_sq(SqList &L){ //sq表示顺序表 L.data=(int*)malloc(sizeof(int)*InitSize); //malloc分配空间 if(!L.data) exit(OVERFLOW); //若存储成功则返回地址若失败则为0,所以失败后则报错 L.length=0; L.listsize=InitSize; return OK; } // 输出顺序表 void PrintList_sq(SqList &L){ for(int i=0;i L.length+1) return ERROR; //i合法值为 1 <= i >=L.length + 1 if(L.length>=L.listsize){ int *newbase = (int*)realloc(L.data,sizeof(int)*(L.listsize+1)); //realloc为malloc分配的空间重新设置 if(!newbase) exit(OVERFLOW); L.data=newbase; L.listsize++; } for(int j=L.length-1;j>=i-1;j--){ L.data[j+1]=L.data[j]; } L.data[i-1]=e; L.length++; return OK; } //删除第i个位置的元素 Status ListDelete_sq(SqList &L,int i){ if(i<1||i>L.length-1) exit(ERROR); for(int j=i-1;j L.data[j]){ int temp=L.data[j]; L.data[j]=L.data[i]; L.data[i]=temp; } } } return OK; } int main(){ SqList L; InitList_sq(L); printf("输入%d个数以空格隔开:n",L.listsize); for(int i=0;i 欢迎分享,转载请注明来源:内存溢出
评论列表(0条)