메뉴 건너뛰기


씨언어 잘하시는 회원님 도움을.....

인자요산2005.05.09 12:53조회 수 150댓글 0

    • 글자 크기



스텍과 큐는 top, rear, front 변수의 초기값을 -1로 줘야 합니다.
씨언어에서의 배열은 첨자가 0부터 시작하기 때문에 반드시 모든 변수를 -1로 초기화 해줘야 결과값이 바르게 나옵니다.



>#include<stdio.h>                
>
>int top;                
>int stack[3];
>int Queue[3];
>int data;
>int head=0,tail=0;                        
>
>push()                        
>{
>        stack[++top] = data;        
>        return 0;
>}
>
>pop()                        
>{
>        stack[top--] = 0;                
>        return 0;
>}
>
>stackwrite()                
>{
>        int i;
>        printf("Stack : ");
>        for(i=top;i>0;i--)                        
>                printf("%3d",stack[i]);
>        return 0;
>}
>
>Q_push()                
>{
>        Queue[tail++] = data;                
>        return 0;
>}
>
>Q_pop()                        
>{
>        Queue[head++] = 0;                        
>        return 0;
>}
>
>Q_write()                        
>{
>        int i;
>        printf("\nQueue : ");                
>        for (i=head;i<tail;i++)                        
>                printf("%3d",Queue[i]);
>        return 0;
>}
>
>
>void main()                        
>{
>        int ch;
>        printf ("**************************************\n");
>        printf ("1. add                2. delete        3.exit\n");
>        printf ("**************************************\n");
>        for(;;)
>        {
>                printf("\n\nChoose : ");
>                scanf ("%d",&ch);
>                printf("\n");
>                if (ch==1)
>                {
>                        if (top > 2)
>                        {
>                                printf("overflow ...\n");
>                                break;
>                        }
>                        printf("Input : ");
>                        scanf("%3d",&data);
>                        push();
>                        Q_push();
>                        stackwrite();
>                        Q_write();
>                }
>                if (ch==2)
>                {
>                        if (top == 0)
>                        {
>                                printf("underflow ...\n");
>                                break;
>                        }
>                        pop();
>                        Q_pop();
>                        stackwrite();
>                        Q_write();
>                }
>                if (ch==3)
>                {
>                        break;
>                }                        
>                
>        }
>}
>
>
>


    • 글자 크기

댓글 달기

번호 제목 글쓴이 날짜 조회 수
공지 드디어 복구했습니다. 와일드바이크 심폐소생의 변!39 Bikeholic 2019.10.27 2898
25720 제 애마 이야기 deadc0w 2003.12.11 435
25719 제 애마 주행거리 25만 킬로미터 돌파~! 팔공산 2003.09.06 613
25718 제 애마가 환골탈태 했습니다. ㅋ frogfinger 2005.05.29 528
25717 제 애인 사진입니다 ^^ 원조초보맨 2004.04.14 934
25716 제 어꺠에 라면자락이 숭숭숭~ 이빨이 아프면 때가나오구요~ 혼자 에쿠스타면 방법을 당한다는 전설이.. 달러멘디 2003.10.19 362
25715 제 얼굴이 많이 탔습니다.10 靑竹 2008.10.14 1000
25714 제 업그레이드는... 십자수 2004.03.04 396
25713 제 업무관련 질문좀 할께요~~(잔차관련질문 아닙니다) acrofoss 2005.04.22 421
25712 제 엉덩이 봐주세요..... lightjun 2004.08.17 159
25711 제 엔진의 성능을 가늠하기가 힘드네요 ^^; CBB 2003.11.02 266
25710 제 엠티비는 40만원대입니다. ohenry 2003.05.30 325
25709 제 여름휴가 계획 병철이 2006.06.15 1194
25708 제 여름휴가 계획입니다. 병철이 2004.07.05 243
25707 제 여자친구 넘(가시나)가 보내온 멜입니당... ........ 2001.06.25 266
25706 제 여자친구 좀 챙겨주세요 ........ 2001.11.20 170
25705 제 여친은.... zara 2005.03.14 183
25704 제 여친이 이글을 보고 하는 말...(해결책) 컴보이 2004.11.05 579
25703 제 영문아이디 franthro의 의미 10 franthro 2007.11.24 1477
25702 제 옆에는 ........ 2001.02.25 166
25701 제 오토바이좀 찾아주세요. d.g.r 2005.05.17 476
첨부 (0)
위로