#include<conio.h>
#include<stdio.h>
#include<stdlib.h>
#define MAX 10
int **t, **p, **top, **bot;
void push();
void pop();
void display();
int main()
{
int get;
int data[MAX][10];
printf("\n 메뉴 선택\n\n 1. push \n 2. pop");
printf("\n 3. display\n 4. quit");
for(;;) {
printf("\n\n 메뉴선택 번호를 입력하시오: ");
scanf("%d", &get);
switch(get) {
case 1:
printf(" push할 문자열를 입력하시오: ");
scanf("%s", &data);
push(data);
break;
case 2:
pop();
break;
case 3:
display();
break;
case 4:
exit(0);
/* 선택값 1이면: 숫자데이터를 입력해서 push */
/* 선택값 2이면: pop */
/* 선택값 3이면: display */
/* 선택값 4이면: exit */
}
}
}
void push(int i)
{
if(p == NULL)
{
p = (int **) malloc(MAX*(sizeof(int)));
bot = p;
top = MAX + p - 1;
}
if(p == top)
{
printf("\n stack full");
return;
}
*p = i;
p++;
}
void pop()
{
if(p == NULL)
{
printf("\n stack empty");
return;
}
p--;
printf(" pop data : %s", *p);
if(p <= bot) p = NULL;
return;
}
void display()
{
if ( p == NULL)
{
printf("\n stack에 data가 없음");
}
t = p-1;
printf(" stack의 전체 data:");
while(t >= bot)
{
printf("\n %s", *t);
t--;
}
return;
}
이거 문자열이 출력될수 잇게 만들어야 되는데 잘 안되네... main 쪽을 바꿔야 된다는데 뭐가문제인지 모르겟다... 좀 도와줘
댓글 0