请问我写的这个代码错在哪里了呢?想不通啊

来源:5-1 编程练习

xonelive

2015-04-21 18:06

package excise02;
public class test12 {
    public static void main(String[] args) {
        int score=53;
        int count=0;
        System.out.println("加分前的分数为:"+score);
        for(int i=53;i<60;i++){
            score=i;
            count+=1;
        }
        System.out.println("加分后的分数为:"+score);
        System.out.println("共加了"+count+"次!");
    }
}

输出结果为

加分前的分数为:53
加分后的分数为:59
共加了7次!

如果把代码改成

package excise02;
public class test1202 {
    public static void main(String[] args) {
        int score=53;
        int count=0;
        System.out.println("加分前的分数为:"+score);
        for(score=53;score<60;score++){
            count+=1;
        }
        System.out.println("加分后的分数为:"+score);
        System.out.println("共加了"+count);
    }
}

这样就没有错了

我指定一个整型变量i,放到循环条件中去,再用i给score赋值,虽然多此一举,但是感觉没有错啊,想不出来为什么会错.

写回答 关注

2回答

  • strivey
    2015-04-26 08:38:34

    最后一次循环 i++自增1是判定!循环终止后i=60,score=59,score和变量i并不同步,循环还是7次没错。你改成后面那么score与for循环中的变量score同步了就对了

    xoneli...

    明白了 谢谢

    2015-04-26 15:56:34

    共 1 条回复 >

  • changfengdaxia
    2015-04-21 18:59:30

    你做的没问题啊!都没错,你编辑的时候报错了吗?

Java入门第一季(IDEA工具)升级版

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

1165172 学习 · 17581 问题

查看课程

相似问题