JAVA算法分析
public class HelloWorld {
? ? public static void main(String[] args) {
? ? ? ??
? ? ? ? // 變量保存成績(jī)
? ? ? ? int score = 53;?
? ? ? ??
? ? ? ? // 變量保存加分次數(shù)
? ? ? ? int count = 0;
??
? ? ? ? ?System.out.println("加分前成績(jī)"+score);?
? ? ? ?
? ? ? ??
? ? ? ?
? ? ? ? while(score<=60){
? ? ? ? ? ? score=score+1;
? ? ? ? ? ? count++;
? ? ? ? }
? ? ? ??
? ? ? ? System.out.println("加分后成績(jī):"+score);
? ? ? ? System.out.println("共加了"+count+"次!");
? ? ? ? 為什么輸出的是最后成績(jī)61分,加了8次,而不是最后成績(jī)60分,加了7次?
? ? ? ??
2016-08-07
把score<=60改成score<60,因?yàn)榘凑漳愕某绦颍趕core=60的時(shí)候還會(huì)再算一次循環(huán),導(dǎo)致score=61,count=8
2016-08-11
誠(chéng)如樓上所言,循環(huán)中判斷到score=60時(shí),是符合循環(huán)條件的,再次進(jìn)入循環(huán),直到score=61時(shí)不符合條件才跳出,所以score=61,而count+了8次。
2016-08-06
不知道!