luiumoon0515   2년 전

제가 이렇게 코드를 짰고, 맞혔습니다라고 뜨는데..

코드를 실행시켜보니깐

(예)

입력: 3 4

출력: 7

입력: 2 3

입력: 3 4

출력: 5

입력: 3 3

출력: 7 

입력: 0 0

출력: 6

이런식으로 첫번째 입력을 제외하고는 한턴씩 출력이 늦게 되고 있어서요. 입력 스트림이랑 출력 스트림은 별개라서 한번에 입력받고 출력하는게 아니라 하나 입력받고 출력해도 상관없다는 글을 보긴 봤는데 이렇게 밀려서 출력이 되어도 괜찮나요? 

0 0을 입력해도 바로 종료되는게 아니라 그 위에 입력한 수를 더한 값을 출력하고 끝나니깐 애매하게 느껴져서요..

혹시 이 문제를 고칠 수 있는 코드나 해결방법이 있을까요?

djm03178   2년 전

scanf에 공백이나 \n과 같은 문자는 일반적으로 필요하지 않습니다. 의도적으로 입력 버퍼에 있는 화이트스페이스 문자들을 지워야 할 필요가 있을 때에만 쓰는 것이고, 그냥 정수만 입력받을 것이라면 "%d%d"라고 쓰면 됩니다.

luiumoon0515   2년 전

헉.. 이거 하나로 해결이 바로 되네요..!! 완전 신기해요... 감사합니다!!

덕분에 scanf에 대해서도, 화이트스페이스에 대해서도 새로 알고 갑니다. ㅎㅎ

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