完成了顺序存储栈和链式存储栈

This commit is contained in:
lzy
2024-04-16 22:14:12 +08:00
parent 11df2226be
commit f13a690864
10 changed files with 474 additions and 0 deletions

View File

@@ -0,0 +1,55 @@
#include <stdio.h>
#include <stdlib.h>
#include "stack.h"
#define NAMESIZE 32
struct score_st
{
int id;
char name[NAMESIZE];
int math;
int chinese;
};
static int print_s(void *record)
{
struct score_st *r = record;
printf("%d %s %d %d\n", r->id, r->name, r->math, r->chinese);
}
int main()
{
STACK *st;
struct score_st tmp;
int i, ret;
st = stack_create(sizeof(struct score_st));
if (NULL == st)
exit(1);
for (i = 0; i < 7; i++)
{
tmp.id = i;
snprintf(tmp.name, NAMESIZE, "stu%d", i);
tmp.math = rand() % 100;
tmp.chinese = rand() % 100;
if (stack_push(st, &tmp))
exit(1);
}
while (1)
{
ret = stack_pop(st, &tmp);
if (-1 == ret)
break;
print_s(&tmp);
}
stack_destroy(st);
exit(0);
}