1.顺序表的结构化定义,初始化,尾部插入,排序,输出,main
#include<stdio.h>
#include<stdlib.h>
#define MAXSIZE 100
#define OVERFLOW -2
#define OK 1
typedef struct{
int *data;
int length;
int listsize;
}Sqlist;
int Init(Sqlist &L){
L.data=(int *)malloc(sizeof(int)*MAXSIZE); //malloc 分配失败返回值为0
if(!L.data){
exit(OVERFLOW);
}
L.length=0;
L.listsize=MAXSIZE;
return OK;
}
void sort(Sqlist &L){
for(int i=0;i<L.length-1;i++){
for(int j=i;j<L.length;j++){
int temp;
if(L.data[i]>L.data[j]){
temp=L.data[i];
L.data[i]=L.data[j];
L.data[j]=temp;
}
}
}
}
int input(Sqlist &L,int e){
L.data[L.length++]=e;
return OK;
}
void output(Sqlist L){
for(int i=0;i<L.length;i++){
printf("%d\t",L.data[i]);
}
printf("\n");
}
int main(){
Sqlist L;
Init(L);
int n;
printf("输入数组长度\n");
scanf("%d",&n);
printf("输入数组元素\n");
for(int i=0;i<n;i++){
int a;
scanf("%d",&a);
input(L,a);
}
printf("输出数组:\n");
output(L);
printf("排序后数组:\n");
sort(L);
output(L);
}