问答详情
源自:5-1 编程练习

关于do while

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		 // 变量保存成绩
        int score = 53; 
        
        // 变量保存加分次数
        int count = 0;


        //打印输出加分前成绩 
        System.out.println("加分前的成绩:"+score);
               
        
        // 只要成绩小于60,就循环执行加分操作,并统计加分次数
//        if(score<60)
//        {
//        	while(score<60){
//        		count=count+1;
//        		score=score+1;
//        	}
//        }
        do{
        	count++;
        }while(score<60);
        
        
//        for(;score<60;score++){
//        	count=count+1;
//        }
        
        //打印输出加分后成绩,以及加分次数
        System.out.println("加分后的成绩:"+score);
        System.out.println("共加了"+count+"次!");
      
	}

for和while都能通

请问我的do while语句存在什么问题,输出只有一行  

加分前的成绩:53


提问者:weibo_艧叆濣_03653610 2017-08-26 21:04

个回答

  • 我的世界_那就是我
    2017-08-26 22:17:48
    已采纳

    do {}while();没有问题,但是在do{}while();中没有执行score=score+1;    所以程序进入死胡同了,一直执行,不能执行下面的输出

  • 光与尘
    2017-08-26 22:56:55

    do .....while  是先执行后判断。。。这样的话count 计数会多一次~