JAVA算法分析
public class HelloWorld {
? ? public static void main(String[] args) {
? ? ? ??
? ? ? ? // 變量保存成績
? ? ? ? int score = 53;?
? ? ? ??
? ? ? ? // 變量保存加分次數
? ? ? ? int count = 0;
??
? ? ? ? ?System.out.println("加分前成績"+score);?
? ? ? ?
? ? ? ??
? ? ? ?
? ? ? ? while(score<=60){
? ? ? ? ? ? score=score+1;
? ? ? ? ? ? count++;
? ? ? ? }
? ? ? ??
? ? ? ? System.out.println("加分后成績:"+score);
? ? ? ? System.out.println("共加了"+count+"次!");
? ? ? ? 為什么輸出的是最后成績61分,加了8次,而不是最后成績60分,加了7次?
? ? ? ??
2016-08-07
把score<=60改成score<60,因為按照你的程序,在score=60的時候還會再算一次循環,導致score=61,count=8
2016-08-11
誠如樓上所言,循環中判斷到score=60時,是符合循環條件的,再次進入循環,直到score=61時不符合條件才跳出,所以score=61,而count+了8次。
2016-08-06
不知道!