메뉴 건너뛰기


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

인자요산2005.05.09 12:53조회 수 159댓글 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;
>                }                        
>                
>        }
>}
>
>
>


    • 글자 크기

댓글 달기

번호 제목 글쓴이 날짜 조회 수
공지 드디어 복구했습니다. 와일드바이크 심폐소생의 변!43 Bikeholic 2019.10.27 40218
25769 Re: 다행입니다. ........ 1999.10.21 168
25768 관심 감사합니다 ^^* vvv0070 2005.11.17 168
25767 ㅋㅋㅋ^^(냉무) 밀알 2005.11.15 168
25766 아이구 제 아뒤까지.. 감사 합니다. somfy 2005.10.31 168
25765 파주 주공단지 보행자 도로에서... 오늘도 2005.10.26 168
25764 xtr로 가세요^^;...(냉무) 강철심장 2005.10.16 168
25763 야호~~~ 양키스 떨어졌다...ㅋㅋㅋ salo16 2005.10.16 168
25762 그렇군요. drmash 2005.10.09 168
25761 일단 떠나십시오. hanggugi 2005.10.08 168
25760 비오는 날에는 持凜神 2005.10.07 168
25759 올해 감식초 공동구매는 날샜답니다. 십자수 2005.10.06 168
25758 안녕하세요!!! 간단한 '설문조사'입니다. 꼭 참여해주세요~! ^^; mystman 2005.10.06 168
25757 안녕하세요!!! 간단한 '설문조사'입니다. 꼭 참여해주세요~! ^^; indra099 2005.10.05 168
25756 대충 올렸음돠 Tomac 2005.10.05 168
25755 이번 상주대회에서 압사사고가 발생했다는데.. 持凜神 2005.10.04 168
25754 한번 입어보고 말씀하시죠 jws9399 2005.10.02 168
25753 음 도난경보기 공구는 언제?? 이든 2005.09.28 168
25752 캬~ 靑竹 2005.09.10 168
25751 요놈 요거 요거 ㅎㅎ 믿어도 될랑가? 持凜神 2005.09.09 168
25750 ==십자수 금연 선언~!== 꼭 반드시 성공하시길... 보고픈 2005.09.09 168
첨부 (0)
위로