sunfeng502 2015-12-18 07:29 采纳率: 100%
浏览 1512
已采纳

do-while条件为假时,程序没有结束

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之后程序怎么没有结束

  • 写回答

4条回答 默认 最新

  • 袁江 2015-12-18 07:49
    关注

    兄弟,你的ck值最终接收的是你输完k之后的换行符所以永远不等于k,永远结束不了外层大循环
    解决办法:最后一个判断就不要用变量ch了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 请问为什么我配置IPsec后PC1 ping不通 PC2,抓包出来数据包也并没有被加密
  • ¥200 求博主教我搞定neo4j简易问答系统,有偿
  • ¥15 nginx的使用与作用
  • ¥100 关于#VijeoCitect#的问题,如何解决?(标签-ar|关键词-数据类型)
  • ¥15 一个矿井排水监控系统的plc梯形图,求各程序段都是什么意思
  • ¥15 ensp路由器启动不了一直报#
  • ¥50 安卓10如何在没有root权限的情况下设置开机自动启动指定app?
  • ¥15 ats2837 spi2从机的代码
  • ¥200 wsl2 vllm qwen1.5部署问题
  • ¥100 有偿求数字经济对经贸的影响机制的一个数学模型,弄不出来已经快要碎掉了