해결된 질문
작성
·
246
1
산술연산자 영상 8분40초에서
scanf_s("%d",&x);
에 대해 7/2를 입력하셨는데 그 후에 결과를 보니 7로만 인식이 되어 7/3=2, 7%3=1 의 결과가 나온 것을 확인하였습니다.
혹시 scanf_s가 7/2를 3으로 인식하지 않고 7로 인식하는 이유가 무엇인가요? 슬래시(/)가 scanf_s에서는 인식하지 않는것인가요?
답변 1
2
영상에서의 입력("7/2")은 모두 문자열 입니다. 즉 7을 2로 나누지 않고 char[4] = {"7/2"}; 처럼 문자열이 됩니다. 따라서 x는 7이며 키보드 입력 버퍼에는 "/2"가 남게 됩니다. 핵심은 실제로 연산을 하지 않는다는 것에 있다 하겠습니다. 참고하시기 바랍니다. :)