도와주세요 조교님!

choyoongi Reply 9 years 31 weeks ago
제코드에 문제점이 있습니다. 무조건 첫번째 숫자를 받을때는 'null'만 나오더라구요... 두번째 수부터는 올바르게 계산하고 출력가능합니다. 근데 코드를 아무리봐도 첫번째에 왜 무조건 null이 나오는지 모르겠습니다...ㅠㅠ
booksky Reply 9 years 31 weeks ago
이런 문제는 종종발생하는 편인데 놓치기 쉽습니다. 코드에서 문제의 갯수를 입력받기 위해서 scanf를 사용하여 문자의 갯수를 입력받고 있습니다. 이 때 숫자를 입력하고 엔터를 누르면 컴퓨터에 \n이 입력되게 됩니다. 숫자를 입력하기 위하여 입력되는 \n 또한 컴퓨터에서는 입력으로 받아들입니다. 즉 의도한 것은 5를 입력하는 것이지만 실제로 들어가게 되는 값은 5\n 인 것입니다. 그리고 scanf 다음에 getchar를 통하여 문자를 입력받기 때문에 맨 처음 c에는 \n값이 들어가버리게 됩니다. 이 문제를 해결하기 위해서 가장 쉬운 방법은 scanf(%d) 다음에 scanf(%c)를 입력해서 \n을 무시해버리는 방법입니다.
choyoongi Reply 9 years 31 weeks ago
그렇군요! 항상 감사드립니다!!