为了账号安全,请及时绑定邮箱和手机立即绑定

麻烦哪位大神看看这里有什么问题,当score初始值是<=50或者>=60的时候不会出错,但是51-58这些数字的时候count会每次都+10次,结果都会大于60

package com.imooc;


public class Testone {


public static void main(String[] args) {

// TODO Auto-generated method stub

// 变量保存成绩

        int score = 50;        

        // 变量保存加分次数

        int count = 0;

        //打印输出加分前成绩      

        System.out.println("加分前成绩:"+score); 

        // 只要成绩小于60,就循环执行加分操作,并统计加分次数

        for(int i=1;i<=60;i++) {

        if(score < 60) {

        score = score + i;

        count = count + i;

        }

        }

        //打印输出加分后成绩,以及加分次数

        System.out.println("加分后成绩:"+score);

      System.out.println("加分次数:"+count);

     }

}

正在回答

3 回答

  score = score + i;count = count + i; 这里应该是 score = score + 1;count = count + 1;

把i换成1

0 回复 有任何疑惑可以回复我~
#1

慕设计0860643 提问者

喔喔 看明白了 谢谢
2018-06-29 回复 有任何疑惑可以回复我~

想用for循环的话试试这样写:

for(;score<60;score++){

    count++;

}

0 回复 有任何疑惑可以回复我~

score++;

count++;

0 回复 有任何疑惑可以回复我~
#1

慕设计0860643 提问者

这种方式我知道也成功了 我是想知道用我上面这样的是什么原因。谢谢你
2018-06-29 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

麻烦哪位大神看看这里有什么问题,当score初始值是<=50或者>=60的时候不会出错,但是51-58这些数字的时候count会每次都+10次,结果都会大于60

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信