gumdung   4년 전

안녕하세요.

궁금한 부분이 있어서 이렇게 질문을 올립니다.

이 문제를 처음에 계속 맞왜틀 하다가 입력방식을 바꾸었더니 (scanf로) ac를 받았는데 문제는 왜 틀렸는지를 잘 모르겠습니다.

fgets를 이용해서(gets 는 표준에 빠져 컴파일이 되지 않아서,,,) 한줄을 입력을 받고 개행문자('\n')까지 가져오는 걸 생각해서 str[strlen(str)-1]='\0' 이렇게 처리를 해주고 나서 비교를 해주려고 하였습니다.

하지만 계속 90퍼쯤에서 틀리더라구요.

아마 저가 fgets에 대해서 잘 알지 못하고 있는 듯 한데 어떤 부분에서 틀리는 건지 잘 모르겠습니다.

감사하고 죄송합니다 ㅠ

djm03178   4년 전

이런 경우는 합리적 의심을 해보셔도 됩니다.

https://www.acmicpc.net/board/view/40710

gumdung   4년 전

왜 그런지 알 수 있을까요??

fgets의 개념을 재대로 습득하지 못한 것 같은데 fgets는 개행문자 무조건를 포함해 읽어버리는게 아닌가요?

답변 너무 감사드립니다

djm03178   4년 전

데이터가 틀려서, 원래 두 번째 줄이 개행으로 끝나야 하는데 개행 문자 없이 입력이 종료되었기 때문에 마지막에 개행이 안 들어간 것입니다.

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