왜 두줄씩 내려갈까요??

jmonaco88의 이미지

#include

int main()
{
int i, b;
char a;

for(i=0; i<10; i++)
{
printf("Enter the count(character): ");
//scanf("%c", &a);
a = getchar();

for(b=0; b {
printf("*");
}

printf("\n");
}

return 0;
}

scanf나 getchar나 둘다 두줄씩 넘어갑니다 ;;;
정상적인 루틴으로는 10번실행이 되야하는데 한번 값을 입력해줄 때마다
2줄씩 실행이 되기 때문에 결국 제가 실제로 입력한 루틴은 5번밖에 안되네요;;;

결과값은

Enter the count(character): l <<이상태에서 제가 A를 입력하면

* //하나가 출력되면서
Enter the count(character):
Enter the count(character):

//이런식으로 두번 출력됩니다 ㅠㅠ

답을 알려주세요 ㅎ

jmonaco88의 이미지

버퍼를 이용하는 함수라서 키보드 버퍼를 비워주면 되는건가요??

근데 scanf도 getchar와 같이 버퍼를 이용하는건가요?? 결과는 똑같더라구요

jmonaco88의 이미지

글 삭제가 안되는 관계로 ㅠㅠ....

어쨋든 혼자서 문제를 찾았습니다. ㅎㅎㅎ 아는것인데 항상 헷갈리네요 ㅎ

dehetdehet의 이미지

본인이 해결을 하셨더라도
어떻게 해결을 했는지, 무엇을 빼먹었는지, 무슨 실수가 있었는지 등을 같이 적어주시면
포럼을 보는 많은 분들에게 도움이 될 것 같습니다.
해결하셨다니 다행이네요.