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

请各位大神帮我改改错误,感激不尽

https://img1.sycdn.imooc.com//5c131f330001f2a719201080.jpg加分后输出的分数总是多一分

正在回答

9 回答

我的

public class HelloWorld {

    public static void main(String[] args) {

        

        // 变量保存成绩

        int score = 53; 

        

        // 变量保存加分次数

        int count = 0;



        //打印输出加分前成绩 

          

       System.out.println("加分前是"+score);

        

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

        for (count=0; score<60; score++)

        {

            count++;

        }

    System.out.println("加分后是"+score);

    System.out.println("共加了"+count+"次");   

        

        


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

看下执行的次数:0* 1* 2* 3* 4* 5* 6* 7* 一共8次 所以多了一遍循环

你如果让 count++ 替换count=i的话 估计就看出来了 count结果应该是8


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

for(i = 0; i < 8; i++) 

0,1,2,3,4,5,6,7,8,   你自己数一数这是几个数字。

1 回复 有任何疑惑可以回复我~
我是直接for,for带有if判断语句        for(;score<60;count++,score++){}


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

建议使用 while循环,,for循环一般用于循环次数确定的循环,while与do-while多用于循环次数不确定的循环。。。

2 回复 有任何疑惑可以回复我~
score=++score 不要这样写代码 ++score就等于score=score+1;


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

 while(score < 60){

            score++;

            count++;

        }


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


for(i = 0; i < 8; i++) {

    //问题原因在于 i 从 0 到 7 是加了 8 次。

    // 53 + 8=61

    // 所以你再修改试试?

}

https://img1.sycdn.imooc.com//5c134ec50001d81102600260.jpg

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

for(i=0;i<8;i++){

score++;

count++;

}

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

举报

0/150
提交
取消

请各位大神帮我改改错误,感激不尽

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