独立完成后看了参考代码,发现自己的代码好冗杂!请教一下诸君优化思路~(^・ω・^ )

来源:5-1 编程练习

死相

2015-07-14 00:42

感觉多出来的一个变量 i 有点意义不明,又总觉得非得留着初始成绩的数据,而把所有的输出结果的代码丢在了最后的一起······

还有没有能够简化的可能呢?代码写得有点丑(汗颜)······

先谢过各位同学~

public class Score{
	public static void main(String args[]){
		int score = 53;      //保存成绩
		int count = 0;       //保存加分后成绩
		int i =1;            //保存加分次数
		
		for (;;){ 
			i++;
			//记录循环次数
			if (score+i == 60){       
				break;
				//如果初始成绩+加分分数等于60,则结束循环
			}
		}
		count = score + i;   
		//加分后成绩=初始成绩+加分分数
		
		System.out.println("加分前成绩:"+score);
		System.out.println("加分后成绩:"+count);
		System.out.println("共加了"+i+"次!");
		//输出结果
	}
}


写回答 关注

3回答

  • 慕klb
    2015-08-30 15:59:30

    我都看晕了

    for(int i=score;score<60;){

      score+=1;

     count++;

    }

  • 弦音若月
    2015-08-16 02:28:41

    你可以看下我写的。因为题目并不复杂,所以我直接用while就可以了


    public class HelloWorld {

        public static void main(String[] args) {

            

            // 变量保存成绩

            int score = 53; 

            

            // 变量保存加分次数

            int count = 0;



            //打印输出加分前成绩 

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

           

            

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

            while(score <60){

                count++;

                score+=1;

            }

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

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

                    

                

            }

            


  • 哈哈小明
    2015-07-19 23:18:02

    你首先要判断分数是否大于60,然后再进行计算。

    可以用score=score+1;来代替15行

    count=count+1;来代替第8行

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

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

1167577 学习 · 18748 问题

查看课程

相似问题