Вы можете избавиться от уродливой условной loop != ENDLOOP
и упростить вашу программу в процессе.
#include <stdio.h>
int main()
{
int c;
while (EOF != (c = getchar())) {
if (c == 'e'|| c == 'E') {
printf ("END LOOP\n");
break;
} else if (c == 'c' || c == 'C')
printf ("Cheese\n");
else
printf ("Not Cheese\n");
}
return 0;
}
Сравнение не равных EOF
показывает, как getchar()
может завершить цикл while. В противном случае break
делает, если 'e' или 'E' взяты из стандартного ввода.
Int перед main и return 0
должны сделать его чистым ANSI C, поэтому в основном стилистический, но хороший стиль.