작성
·
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 함수에 대해 복습해보시고 강의에서 교수님이 소개하시는 해당 강의의 코드로 공부해보시는게 좋을 것 같아요!