#include <stdio.h>
#define SIZE 5
int stack[SIZE];
int sp;
void push(int value);
int pop(void);
int main(void) {
sp=0;
int resp, data;
while(1){
printf("1:push 2:pop 0:end\n");
if(!resp) break;
switch(resp){
case 1:
push(data);
break;
case 2:
pop();
break;
}
}
for(int i=0;i<sp;i++){
printf("stack[%d]=%d\n",i
,stack
[i
]); }
return 0;
}
void push(int value){
if(sp >= SIZE){
}else{
stack[sp++] = value;
}
}
int pop(void){
if(sp <= 0){
return 0;
}else{
return stack[--sp];
}
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiAKI2RlZmluZSBTSVpFIDUKaW50IHN0YWNrW1NJWkVdOwppbnQgc3A7CiAKdm9pZCBwdXNoKGludCB2YWx1ZSk7CmludCBwb3Aodm9pZCk7CiAKaW50IG1haW4odm9pZCkgewoJc3A9MDsKCWludCByZXNwLCBkYXRhOwoJd2hpbGUoMSl7CgkJcHJpbnRmKCIxOnB1c2ggMjpwb3AgMDplbmRcbiIpOwoJCXNjYW5mKCIlZCIsJnJlc3ApOwogCgkJaWYoIXJlc3ApIGJyZWFrOwogCgkJc3dpdGNoKHJlc3ApewoJCQljYXNlIDE6CgkJCQlwcmludGYoInB1c2g6Iik7CgkJCQlzY2FuZigiJWQiLCZkYXRhKTsKCQkJCXB1c2goZGF0YSk7CgkJCQlicmVhazsKCQkJY2FzZSAyOgoJCQkJcG9wKCk7CgkJCQlicmVhazsKCQl9CgkJcHJpbnRmKCJzcD0lZFxuIixzcCk7Cgl9CglwcmludGYoIlxuIik7Cglmb3IoaW50IGk9MDtpPHNwO2krKyl7CgkJcHJpbnRmKCJzdGFja1slZF09JWRcbiIsaSxzdGFja1tpXSk7Cgl9CglyZXR1cm4gMDsKfQoKdm9pZCBwdXNoKGludCB2YWx1ZSl7CglpZihzcCA+PSBTSVpFKXsKCQlwcmludGYoIuOCueOCv+ODg+OCr+OBjOa6gOadr+OBp+WFpeOCiuOBvuOBm+OCk1xuIik7Cgl9ZWxzZXsKCQlzdGFja1tzcCsrXSA9IHZhbHVlOwoJfQp9CgppbnQgcG9wKHZvaWQpewoJaWYoc3AgPD0gMCl7CgkJcHJpbnRmKCLjgrnjgr/jg4Pjgq/jgpLlj5bjgorlh7rjgZvjgb7jgZvjgpNcbiIpOwoJCXJldHVybiAwOwoJfWVsc2V7CgkJcmV0dXJuIHN0YWNrWy0tc3BdOwoJfQp9