작성일 : 18-06-19 16:07
자기주도 c언어 함수3-4번 문제
 글쓴이 : 만수(veryworks)
조회 : 209  
공부하다가 이해가 안되서요..

for(i=1;i<=6;i++)
   arr[level]=i;
   dice(level+1);

책에 보면 '현재의 level에서 1~6까지의 값을 차례로 담고 다음 level을 호출한다.'라고 되어있는데
arr[1]=1, 
arr[1]=2,
arr[1]=3, 
arr[1]=4.
arr[1]=5, 
arr[1]=6이렇게 저장하고 난 후, dice(2)를 호출한다는 말인가요? 그럼 최종적으로 arr[1]에 대입된 6만 남는거 같아서요..


n=3일때
arr[1]=1을 먼저 저장하고, dice(2)를 호출해서 arr[2]에 1을 저장하고, dice(3)을 호출해서 arr[3]에 1을 저장하고
level=4가 되면서 output함수를 호출해서 arr[]배열에 저장된 1,1,1이 출력되는거 아닌가요? 

이렇게 되면 output함수가 끝난 뒤 어디로 리턴을 되야 하는건가요? 

다시 for문으로 돌아가서 반복해야 할 것 같은데..잘 모르겠네요...

알려주세요!

컴스쿨 18-06-23 15:59
 
level 4에서 출력이 끝나면 자신을 호출한 level3으로 돌아가서 for문이 계속 진행됩니다.
아까 1이었으니 이제 2가 되겠죠? arr[3]에 2를 저장하고 다시 dice(4)를 호출합니다.
그러면 arr에 있는 1,1,2를 출력하고 다시 level3으로 돌아갑니다.
디버깅 모드에서 call stack을 열어놓고 한줄씩 실행해 보면 과정을 살펴볼 수 있습니다.
 
 

Total 597
번호 제   목 글쓴이 날짜 조회
597 강좌 결제했는데 포인트 적립이 안 이채은 10-15 3
596 입금확인 부탁드려요~~ 장승혁 10-02 19
595 책을 어디서 사놔요? 남지윤 09-01 78
594 15년 초등 4번문제 질문입니다 안성호 08-31 80
593 도와주세요 남지윤 08-20 101
592 맛보기 영상이 재생이 안되요 남지윤 08-18 100
591 문자열2 형성평가5 번 (1) 정주영 07-28 140
590 자기주도 c언어 함수3-4번 문제 (1) 만수 06-19 210
589 입금 확인 부탁드립니다. (1) 이홍국 06-14 164
588 수강연장규정 (1) 허종 06-12 135
587 입금확인 부탁드립니다. (1) 윤일용 06-10 154
586 입금했습니다. (1) 장상우 05-29 127
585 강의 오류 (1) 양진혁 05-27 180
584 2012 중2 전시장 (1) 양진혁 05-21 193
583 입금확인부탁드립니다. (1) 김필애 05-19 117
582 2017년 중등부 2번 (1) 양진혁 05-17 143
581 격자상의 경로 메모리 과다 (2) 양진혁 05-11 229
580 2017전국대회 강좌신청 (1) 김선이 05-10 177
579 중등부 트리 2 (2) 양진혁 05-06 165
578 중등부 트리 (1) 양진혁 05-06 178
 1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  

회사소개 | 개인정보처리방침 | 이용약관 | 찾아오시는 길 | 이메일주소 무단수집거부 | 사업자정보확인
경기도 안양시 동안구 호계동 1065-10 협성골드프라자 601호 한컴에듀케이션(주) TEL : 031-388-8840 FAX : 031-388-0996
대표자 : 김동규 사업자번호 : 130-86-02870 통신판매업신고번호 : 제 2010-경기안양-888호
COPYTIGHT(C) 한컴에듀케이션(주), ALL RIGHT RESERVED.
담은강좌 : 0