#include "stdafx.h"
#include<iostream>
typedef int ElemType;
using namespace std;
typedef struct stacknode {
ElemType data;
struct stacknode * next;
}StackNode;
typedef struct {
StackNode *top;
}LinkStack;
LinkStack *InitStack() {
LinkStack *s;
s = (LinkStack*)malloc(sizeof(LinkStack));
s->top = NULL;
return s;
}
void Push_LinkStack(LinkStack*s, ElemType elem) {
StackNode *p;
p = (StackNode*)malloc(sizeof(StackNode));
p->next = s->top;
p->data = elem;
s->top = p;
}
int Pop_LinkStack(LinkStack *s, ElemType *elem) {
StackNode *p;
if (s->top == NULL) return 0;
else {
p = s->top;
*elem = p->data;
s->top = p->next;
free(p);
return 1;
}
}
int main() {
LinkStack *s = InitStack();
int e=0;
for (int i = 0; i < 5; i++) {
cin >> e;
Push_LinkStack(s, e);
}
ElemType item;
Pop_LinkStack(s, &item);
cout << item<<endl;
system("pause");
return EXIT_SUCCESS;
}