cmk5378   5년 전

안녕하세요 개념이 많이 부족한 초보입니다!

따로 질문할 곳이 없어서 조금 많이 부끄럽지만 여기에 여쭈어봅니당

보니까 각 노드를 입력 받을 때 scanf에서 입력이 안 되는 것 같습니다.

입력 받는 방식을 다르게 해서 문제를 풀긴했는데, 왜 scanf로 하면 안 되는 건가요???

설명은 주석달아 놓았습니당,,

도와주세요~!~!

sgchoi5   5년 전

scanf %c 를 이용해서 입력을 받을 때는 space 와 carriage return (\r) + line feed (\n) 에 주의하셔야 합니다.

보통, 채점 서버는 Linux 형식이기 때문에 line feed (\n) 만 있다고 생각하시면 됩니다.

%d 로 입력을 받으면 input stream 에는 line feed 가 있으니 소모를 해주어야 합니다.

scanf("%d\n, &num) 하시고,

scanf("%c %c %c\n, ........) 하셔도 되고,

scanf("%d, &num) 하시고,

scanf("%c %c %c %c\n, &lineFeed, ...........) 하셔도 됩니다.

Visual Studio Debugger 를 이용해서 버퍼에 어떤 값이 있는지 보시면 좋을 것 같네요.


cmk5378   5년 전

감사합니다!

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