sample input을 예로 들어 설명드리겠습니다.
u
KOREA university in seoul
이렇게 입력할 경우 u는 scanf를 통하여 c에 입력이 됩니다.
문제는 u를 입력하기 위해 우리가 엔터를 입력하게 되는데, 그 때 \n이 발생하게 됩니다.
fgets는 \n이 입력될 때까지를 string으로 인식하기 때문에 이 경우 바로 \n이 들어오기 때문에 s에는 아무것도 들어있지 않은 문자열이 들어오게 되는 것이지요.
이 문제를 해결하려면
scanf("%c", &c);
scanf("%c", &dump);
fgets(s, sizeof(s),stdin);
이런 식으로 c를 입력받은 후 덤프값에 \n을 버리면 s에 정상적으로 값을 입력할 수 있을 것입니다.