자료구조 스택에 대해서 질문요~
아쿠아리우스
질문 제목 : 스택 출력에 대해서 질문요~스택 출력이요~질문 내용 :
자료구조 책에서 보고 예제를 그대로 따라쳤는데 실행결과가 왜 이렇게 나온 건지 이해가 안되요.
설명 좀 부탁드릴게요~
#include stdio.h
#define max_stack_size 100
typedef int element;
element stack[max_stack_size];
int top = -1;
// 공백 상태 검출 함수
int is_empty()
{
return (top == -1);
}
// 포화 상태 검출 함수
int is_full()
{
return (top == (max_stack_size-1));
}
// 삽입 함수
void push(element item)
{
if( is_full() ) {
fprintf(stderr, 스택 포화 에러\n);
return ;
}
else stack[++top] = item;
}
// 삭제 함수
element pop()
{
if( is_empty() ) {
fprintf(stderr, 스택 공백 에러\n);
exit(1);
}
else return stack[top--];
}
// 피크 함수
element peek()
{
if( is_empty() ) {
fprintf(stderr, 스택 공백 에러\n);
exit(1);
}
else return stack[top];
}
// 주 함수
void main()
{
push(1);
push(2);
push(3);
printf(%d\n, pop());
printf(%d\n, pop());
printf(%d\n, is_empty());
}
이렇게 치고 난 후 실행하니
3
2
0
1.
스택은 후입선출로 알고 있는데, push로 1,2,3 을 입력하고 pop을 두번 하면 숫자 두개를 꺼내야 되는거 아닌가요....?
결과가 왜 이렇게 나오는지 설명좀 부탁드려요........
2.
그리고 제가 소스를 직접 치니 exit 부분에 빨간색 밑줄해서exit 가 정의되있지 않다는데
이거는 어떻게 해줘야지 해결가능한가요.(오류는 안 뜨지만 궁금해요~)
c언어도 잘 모르는 상태에서 자료구조 배우니 막막하네요... 도움좀 부탁드려요~~~~
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2692451 | 이 문제좀 풀어주세요 ^^ | 게자리 | 2025-04-23 |
2692424 | 2차원배열 자료입력질문이요! (1) | 똘끼 | 2025-04-22 |
2692401 | 유닉스안에서 C언어를 이용한 명함 만들기 입니다; 이해안가는 부분이있네요 | 2gether | 2025-04-22 |
2692374 | 고수님들 댓글 마니부탁해요!!! (2) | 엄지 | 2025-04-22 |
2692343 | scnaf에 자꾸 선언을 참조하라는데;; (8) | 도래 | 2025-04-22 |
2692282 | 도스상에서 생성된 exe파일에 press~ 뜨게 하기 (4) | 회사원 | 2025-04-21 |
2692256 | scanf("%*c"); ㅠㅠ 고수님들 | 거북이 | 2025-04-21 |
2692230 | 하노이탑 질문입니다. (1) | 미쁘다 | 2025-04-21 |
2692210 | 정보 올림피아드 문제인데.. 풀이 과정이 궁금합니다.(재귀함수) (5) | 물티슈 | 2025-04-20 |
2692144 | C언어와 리눅스에 대한 질문입니다. | 싴흐한세여니 | 2025-04-20 |
2692114 | 컨텍스트 스위칭하는데 걸리는 시간 측정.. | YourWay | 2025-04-19 |
2692086 | 간접참조 연산자, 증감연산자 질문이용! (2) | 블랙캣 | 2025-04-19 |
2692056 | 주석좀 달아주세요. 몇개적엇는데 몇개만달아주세요. (2) | DevilsTears | 2025-04-19 |
2691978 | 진수 쉽게 이해하는법... (3) | 지지않는 | 2025-04-18 |
2691949 | getchar() 한 문자를 입력받는 함수 질문 | 채꽃 | 2025-04-18 |
2691919 | 배열 정렬 및 합치기 질문입니다. | 사과 | 2025-04-18 |
2691845 | c언어왕초보 질문이 있습니다........ | 루나 | 2025-04-17 |
2691815 | void add(int num); 함수... (4) | 살랑살랑 | 2025-04-17 |
2691756 | 명령 프롬프트 스크롤바가 없어요 | 두메꽃 | 2025-04-16 |
2691725 | 자료구조에 관련해서 질문이 있어 글을 올립니다. | 누리알찬 | 2025-04-16 |