11번 질문입니다.
#include <stdio.h>
int main()
{
int c ;
c = getchar();
while (c != EOF)
{
if (c<'0' || c>'z' || '9' < c < 'A' || 'Z' < c < 'a')
{
while (c<'0' || c>'z' || '9' < c < 'A' || 'Z' < c < 'a')
c = getchar();
printf("\n");
}
else
{
putchar(c);
c = getchar();
}
}
return 0;
}
위와 같이 아스키 코드를 이용해 코딩을 했는데 제대로 작동을 안하네요..
어디가 잘못된 것이지 알려주실 수 있나요?
문제는 풀었는데 궁금한 것이 하나 있습니다.
위에서 (c<'0' || c>'z' || '9' < c < 'A' || 'Z' < c < 'a') 부분을 (c<'0' || c>'z' || ('9' < c && c < 'A') || ('Z' < c && c< 'a')으로 바꿔야 제대로 작동했는데요.
'9' < c < 'A' 와 ('9' < c && c < 'A')의 차이가 무엇인가요? 둘이 같은 것을 의미하지 않나요?
관계연산자는 하나만 사용하실 수 있어요..!
푸신거처럼 and로 묶어주셔야 합니다.