인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

조건희님의 프로필 이미지
조건희

작성한 질문수

홍정모의 따라하며 배우는 C언어

7.8 단어 세기 예제

코딩중 질문입니다.

작성

·

149

0

안녕하세요.  코딩도중 선생님과는 다르게 코딩을 해봤는데요, 결과값이 잘 안나오네요..ㅠㅠ 

수십번 봐도 어디서 잘못된건지 찾을 수가 없어서 질문하겠습니다. 저가봤을 땐 잘못된 부분이 없는것같은데 어디서 잘못된거죠..?

int main()

{

char ch;

int count1 = 0;

int count2 = 0;

int count3 = 0;

printf("Enter text : ");

ch = getchar();

if ((ch != PERIOD)&&(ch!=' ')&&(ch!='\n'))

count1++;

if (ch == ' ')

count2++;

if (ch == '/n')

count3++;

printf("Charaters = %d, Words = %d, Lines = %d\n", count1,count2,count3);

return 0;

 }

답변 1

0

질문자님께선 while같은 반복문을 사용하지 않고 계십니다. 위의 예제는 단어나 문장들을 입력하게 되고 이를 글자, 단어, 라인 수를 카운팅 하는 문제인데 질문자님의 코드는 반복문을 전혀 사용하고 있지 않기 때문에 ch = getchar(); 이 ch 딱 한글자에 대해서만 카운팅을 하고 계신 셈이 됩니다. 즉 "Hello World"를 입력했다면 'H' 한글 자에 대해서만 카운팅 하고 끝내셨던 셈이에요. getchar 함수에 대해 복습해보시고 강의에서 교수님이 소개하시는 해당 강의의 코드로 공부해보시는게 좋을 것 같아요!

조건희님의 프로필 이미지
조건희

작성한 질문수

질문하기