joadusdn   2년 전

문자 하나하나 입력을 받아서 문자의 개수를 세고... 그 개수들을 토대로 답을 얻어내게 코드를 짰는데요..

왜 틀리는지 도무지 모르겠네요ㅠㅠ

잠깐 봐주시면 감사하겠습니다..

kyhdudgns113   2년 전

입력으로

(스페이스바)

가 들어오면 ? 가 나와야하는데 A 가 나오네요.

kyhdudgns113   2년 전

1. tmp 를 초기화하지 않아 쓰레기값이 들어가게 됩니다. 그런데 입력이 공백이라면, 조건문을 들어갈 일이 없으므로, tmp 값이 쓰레기값인 상태로 나오게 되죠. 따라서 tmp 값이 n[max == 0] 보다 작은 음수일 경우가 발생할 수도 있게 되고, A가 출력됩니다.
tmp = 0 으로 초기화 하시면 됩니다.
2. 입력의 끝이 개행문자(\n) 뿐만 아니라, \0(NULL), EOF 일수도 있습니다. getchar 부분을 손보셔야 할 것 같습니다.

댓글을 작성하려면 로그인해야 합니다.