#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
char ans[81];
int i;
scanf("%d", &i);
getchar();
for (int k = 0; k < i; k++)
{
gets(ans);
getchar();
int n = 0;
int flag = 0;
int result = 0;
while (ans[n] != '\0')
{
if (ans[n] == 'O')
{
flag++;
result += flag;
}
else
flag = 0;
n++;
}
printf("%d\n", result);
}
return 0;
}
현재 이러한 코드를 사용하고 있는데 궁금한게 제가 gets 함수 뒤에 getchar를 넣은 이유는 gets함수에 문자배열을 입력시킨 다음에 \n을 하게 되는데 그 \n을 입력하기 위함입니다. 허나 막상 작동을 시켜보니 생각한대로 getchar에 \n이 들어가는 것이 아니라 또 다른 값을 입력받게 됩니다. 왜 그런가요?