#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<stdlib.h>
#include<assert.h>
#include<string.h>
#define MAXSIZE 1000
typedef int DateType;
typedef struct SeqList
{
DateType arr[MAXSIZE];
size_t size;
}SeqList;
//打印静态顺序表
void PrintSeqList(SeqList *Seq)
{
assert(Seq);
if (Seq->size == 0)
{
printf("静态顺序表当前为空!\n");
return;
}
for (int index = 0; index < Seq->size; index++)
{
printf("%d-> ", Seq->arr[index]);
}
}
//初始化静态顺序表
void init(SeqList *Seq)
{
assert(Seq);
memset(Seq->arr, 0, sizeof(DateType)* MAXSIZE);
Seq->size = 0;
}
//尾插静态顺序表
void PushBack(SeqList *Seq,DateType x)
{
if (Seq->size >= MAXSIZE)
{
printf("静态顺序表当前已满,无法插入!\n");
return;
}
Seq->arr[Seq->size++] = x;
}
//尾删静态顺序表
void PopBack(SeqList *Seq)
{
assert(Seq);
if (Seq->size <= 0)
{
printf("静态顺序表当前已满,无法插入!\n");
return;
}
--Seq->size;
}
void Test1(SeqList *Seq)
{
init(Seq);
PushBack(Seq, 0);
PushBack(Seq, 1);
PushBack(Seq, 2);
PushBack(Seq, 3);
PushBack(Seq, 4);
PushBack(Seq, 5);
//在执行PopBack时再执行以下三行语句
PopBack(Seq);
PopBack(Seq);
PopBack(Seq);
PrintSeqList(Seq);
}
int main()
{
SeqList Seq;
Test1(&Seq);
system("pause");
return 0;
}
转载于:https://blog.51cto.com/10740184/1743104