scanf와 fgets가 중첩되면 문제가 생기나요?

okkdy0628 Reply 3 years 46 weeks ago
문자열함수 사용 연습을 위해 예전 문제 하나를 풀어보려 할 때도 그렇고, 2020년의 '변수명' 문제를 풀려고 할 때도 scanf를 먼저 사용하고 fgets를 나중에 사용하면 2번 입력받으려고 했던 의도와 달리 아래와 같이 됩니다. e.g. (생략) scanf("%d", &n); fgets(s, 10, stdin); 으로 하면, n을 입력하는 순간 프로그램이 종료됩니다. 이렇게 scanf와 fgets가 중첩될 경우 문제가 있나요? 이 문제를 해결하고 '2번 입력'이라는 의도를 살리기 위해서는 어떤 조치를 해 주어야 하나요?
withcs2 Reply 3 years 46 weeks ago
scanf로 숫자를 입력받고 fgets로 숫자 뒤에있는 줄바꿈을 입력받았습니다...! fgets를 한번 더 해주시거나, n도 fgets로 입력받거나, scanf로 줄바꿈까지 받으면 해결될거예요