public class Guess4 {
public static void main(String[] args)
throws java.io.IOException{
char ch;
do{
System.out.println("Enter a char:");
ch=(char)System.in.read();
if (ch=='k')
System.out.println("you're right");
else
{ System.out.println("you're wrong");
System.out.println("try again");}
do{
ch=(char)System.in.read();
}while (ch!='\n');
}while(ch!='k');
}
}
输入K之后程序怎么没有结束
兄弟,你的ck值最终接收的是你输完k之后的换行符所以永远不等于k,永远结束不了外层大循环
解决办法:最后一个判断就不要用变量ch了
后面那个while放错位置了,放在下面那个花括弧外面
建议你改一下书写习惯,先把框架写好再往里填写内容,比如先写好do{}while()再往里面添加代码或者条件,类似的还有lf(){}elself(){}……else{}
嵌套层级套错了,编码习惯注意一下就可以避免了