#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 : ");
if(!resp) break;
switch(resp){ // 「!resp」から「resp」に修正
scanf("%d", &data
); // 「dvsnf」から「scanf」に修正 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){
printf("スタックが空で取り出せませんでした\n"); return 0;
}else{
return stack[--sp];
}
}
I2luY2x1ZGU8c3RkaW8uaD4KCiNkZWZpbmUgU0laRSA1CmludCBzdGFja1tTSVpFXTsKaW50IHNwOwoKdm9pZCBwdXNoKGludCB2YWx1ZSk7CmludCBwb3Aodm9pZCk7CgppbnQgbWFpbih2b2lkKQp7CiAgICBzcCA9IDA7CiAgICBpbnQgcmVzcCwgZGF0YTsKCiAgICB3aGlsZSgxKXsKICAgICAgICBwcmludGYoIjEgOiBwdXNoICAyOnBvcCAgMDplbmQgOiAiKTsKICAgICAgICBzY2FuZigiJWQiLCAmcmVzcCk7CgogICAgICAgIGlmKCFyZXNwKSBicmVhazsKCiAgICAgICAgc3dpdGNoKHJlc3ApeyAvLyDjgIwhcmVzcOOAjeOBi+OCieOAjHJlc3DjgI3jgavkv67mraMKICAgICAgICAgICAgY2FzZSAxOiBwcmludGYoInB1c2ggOiAiKTsgCiAgICAgICAgICAgICAgICAgICAgc2NhbmYoIiVkIiwgJmRhdGEpOyAvLyDjgIxkdnNuZuOAjeOBi+OCieOAjHNjYW5m44CN44Gr5L+u5q2jCiAgICAgICAgICAgICAgICAgICAgcHVzaCggZGF0YSApOwogICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIDI6IHBvcCgpOwogICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgICAgICBwcmludGYoInNwPSVkXG4iLCBzcCk7CiAgICB9CgogICAgcHJpbnRmKCJcbiIpOwogICAgZm9yKGludCBpPTA7IGk8c3A7IGkrKyl7CiAgICAgICAgcHJpbnRmKCJzdGFja1slZF09JWQgXG4iLCBpLCBzdGFja1tpXSk7CiAgICB9CgogICAgcmV0dXJuIDA7Cn0Kdm9pZCBwdXNoKGludCB2YWx1ZSkKewogICAgaWYoc3AgPj0gU0laRSl7CiAgICAgICAgcHJpbnRmKCLjgrnjgr/jg4Pjgq/jgYzmuoDmna/jgaflhaXjgorjgb7jgZvjgpPjgafjgZfjgZ9cbiIpOwogICAgfWVsc2V7CiAgICAgICAgc3RhY2tbc3ArK10gPSB2YWx1ZTsKICAgIH0KfQoKaW50IHBvcCh2b2lkKQp7CiAgICBpZihzcCA8PSAwKXsKICAgICAgICBwcmludGYoIuOCueOCv+ODg+OCr+OBjOepuuOBp+WPluOCiuWHuuOBm+OBvuOBm+OCk+OBp+OBl+OBn1xuIik7CiAgICAgICAgcmV0dXJuIDA7CiAgICB9ZWxzZXsKICAgICAgICByZXR1cm4gc3RhY2tbLS1zcF07CiAgICB9Cn0=