hwimori   1년 전

gets_s 를 쓰니 정답은 나오지만 컴파일 에러가 떴습니다.

gets_s는 지원이 안되기 때문에 fgets를 쓰라는 글을 보고 그렇게 해보았는데 

마지막 줄에 띄어쓰기를 할 때에는 답이 다르게 나오네요..(예제 입력3 입니다.)

어떻게 하면 좋을까요.. 피드백 해주시면 감사하겠습니다.

seawon0808   1년 전

gets를 사용해 보세요.

0000000000   1년 전

fgets로 입력을 받으면 줄바꿈까지 함께 문자열에 저장되기 때문에 끝에 공백이 들어가더라도 arr[len-1]은 공백이 아닌 줄바꿈이 저장되어 있기에 답이 다르게 나옵니다. 이에 대해 처리를 해 주셔야 합니다. 또한 이 코드는 맨 첫 번째 글자와 맨 마지막 글자가 모두 공백인 경우 틀린 답을 출력합니다.

여담으로 gets는 보안상의 이유로 C11 이후에서는 사용이 불가능합니다.

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