변수를 잘못된 자료형으로 선언한 것과 입력 받는 것에 문제가 있습니다.
1018번 - 체스판 다시 칠하기
변수를 잘못된 자료형으로 선언한 것과 입력 받는 것에 문제가 있습니다.
변수 선언에 대한 것은 제가 잘못 봤네요.
하지만 입력 받는 것에서는 확실히 문제가 있습니다.
그리고 왜 코드에는 scanf("%s", &chess[i][j]); 라고 되어있는데 작성자 님은 scanf("%s", chess[i][j]); 로 입력을 받았다고 하죠?
질문을 올릴 때는 무조건 백준에 제출한 똑같은 코드를 올려주세요.
%s에 대해서 알아보세요.
계속 답 달아주셔서 감사합니다ㅜㅠ
%s는 문자열 지정자라 공백없는 BWBWBWBW 같은 입력은 한 개로 쳐서 그 다음으로 안 넘어간다는 말씀이신 걸로 알아들었습니다.
scanf("%c", &chess[i][j]); 로 바꿔보았는데도 계속 입력을 안 먹어주고 바로 출력으로 가버리는데 또 문제를 찾아달라하면 너무 칭얼대는 것이겠죠..?
디버그를 위해 %1d 로 바꿔 체스판 알맹이(BW)를 숫자로 입력해보고자 하는 시도도 아예 안 먹히고 n, m만 받고나면 스캔을 전혀 안해줘서 모든 걸 때려치고 싶은 오후가 되어 다시 댓글을 달게 되었습니다...
😥😥😥
%1d로 입력 받은 코드를 올려주실 수 있나요?
제가 답해도 되는지도 모르겠고 saguaro님을 잘 이해한 건지는 몰라도 예제 입력 1을 보면 8 8 다음에 줄바꿈이 있어서 처음 W(2번째 줄의 1번째 글자) 를 " %c"로 입력 받아도 되는 것입니다.
오히려 첫 번째 체스판 글자를 공백 없이 입력 받으면 틀렸다고 나올겁니다.
댓글을 작성하려면 로그인해야 합니다.
saguaro 1년 전 1
getchar();가 문젠가 싶어 37열을 주석처리하면 콘솔창이 m, n만 입력해도 쇽 사라지고
주석처리 안하면 가로 세로 크기만 입력해도 갑자기 출력이 나옵니다.
이유가 뭘까요...?
(그 외에 코드에 대한 지적도 감사하겠습니다.)