121쪽 47번 문제와 91쪽 3번 문제의 차이점이 잘 이해가 안 됩니다.
- 91쪽 3번에서는
main 실행문에서 prnt() 함수를 호출해서 while 반복문을 실행한 후 조건에서 벗어나면 자신을 호출하는 prnt() 함수 없이 바로 탈출해서 main의 prnt()로 돌아가 다음 실행문인 printf()를 실행하고 종료했는데
- 121쪽 47번과 118쪽 41번 문제에서는
while문에서 자기 자신을 호출하는 prnt() 함수를 별도로 실행해서 조건에서 벗어나는 경우 복잡한 과정을 거쳐 main()의 prnt()로 되돌아갔는데 91쪽 3번 문제와 무슨 차이가 있는지요?
91쪽 3번 문제 처럼 prnt() 함수를 생략하면 결과가 달라지는지요?
달라진다면 while문의 prnt()함수를 생략할 경우 어떤 결과가 나오는지요?
안녕하세요.
91쪽 문제3번은 자기호출이 아니라 단순한 함수호출입니다.
함수를 호출하여 처리하고 다시 돌아오는 것이죠.
하지만 121쪽의 문제47번은 prnt 함수 안에서 다시 prnt, 즉 자신을 다시 호출하는 경우입니다.
만일 while문 안에서 자신을 다시 호출하는 prnt함수가 없다면
단순 함수 호출과 마찬가지로
prnt 함수가 한 번 수행된 후 main 함수로 돌아가게 됩니다.
오늘도 즐거운 하루 되세요.
-
*2017-04-03 10:47:21
안녕하세요.
91쪽 문제3번은 자기호출이 아니라 단순한 함수호출입니다.
함수를 호출하여 처리하고 다시 돌아오는 것이죠.
하지만 121쪽의 문제47번은 prnt 함수 안에서 다시 prnt, 즉 자신을 다시 호출하는 경우입니다.
만일 while문 안에서 자신을 다시 호출하는 prnt함수가 없다면
단순 함수 호출과 마찬가지로
prnt 함수가 한 번 수행된 후 main 함수로 돌아가게 됩니다.
오늘도 즐거운 하루 되세요.