В общем, не могу сформулировать ответ, но видение ситуации таково:
Немного перефразировав код получаем на выходе номер символа Юникод.. значит компилятор видит символ "K" как "75" (инт)..
class temp {
public static void main(String args[])
throws java.io.IOException {
int ch; char answer = 'K';
System.out.println("I'm thinking of a letter between A and Z.");
System.out.print("Can you guess it: ");
ch = System.in.read(); // get a char
System.out.println(ch);
/*if(ch == answer) System.out.println("** Right **");
else System.out.println("...Sorry, you're wrong."); */
}
}