|
안녕하세요
책에 설명이 부족해서 아니.. 다른분들은 다 이해하는데 저만 못하는지.. 훔..
#include <stdio.h>
#include <conio.h>
main()
{
clrscr();
char word[20][20];
int c,num=0,pos=0;
while((c=getchar())!= -1)
{
if(c>='a' && c<='z' || c>='A' && c<='Z')
{
word[num][pos++]=c;
continue;
}
switch(c)
{
case ' ':
case '\t':
word[num][pos]='\0';
pos=0;
num++;
break;
case '\n':
for(;num>=0;num--)
printf("%s ",word[num]);
putchar('\n');
num=0;
pos=0;
}
}
putchar('\n');
getch();
}
getch();
}
이소스 입니다.
dog pig tiger horse bird 일케 입력하면 답이
bird horse tiger pig dog 일케 나온답니다..
1. while((c=getchar())!= -1) 요기 -1 하고 비교한 이유가 먼가요? -1이 머지요? 엔터인가요?
2. continue; 요거 나오면 switch 안가고 바로 while 문 첨으로 가는건가요?
3. getchar 설명 보면 엔터를 눌러야만 입력이 끝난걸로 인식한다고 하는데.. 그럼 값 입력시
d엔터o엔터g엔터스페이스엔터p엔터 이런식으로 입력해야 하는게 아닌가요? 그래야 word[0][0]
부터 d word[0][1] 에 o 이런식으로..
4. case '\n': 요게 엔터키 눌렀을때 찾는건가요?
뒤죽박죽 장난 아니네요.. 나이먹고 배울려니.. 훔.. 설명좀 해주세요 ㅜㅠ
|