[問題] 一個輸入的問題

看板java作者 (不要親我)時間17年前 (2008/12/04 15:50), 編輯推噓1(102)
留言3則, 2人參與, 最新討論串1/1
大家好,我是自己學java,我不知道標題應該選哪種 我之前寫過其他程式語言 我剛剛在寫同學一個作業的時候 發現了一個問題,編譯都沒錯,可是執行的時候到一個地方就會出錯! 麻煩幫我看一下 程式碼如下: -------------------------------- import java.util.Scanner; public class score{ public static void main(String[] args){ //程式開始 Scanner scan = new Scanner(System.in); //宣告記憶體區 // ※宣告區 /////////////////////////////////// String Name1=""; //名字1 String Name2=""; //名字2 String Name3=""; //名字3 int Score1=0; //分數1 int Score2=0; //分數2 int Score3=0; //分數3 int Max=0; //最大值 /////////////////////////////////// // ※輸入 區 /////////////////////////////////////////// System.out.print("請輸入第1位同學的名字:"); Name1= scan.nextLine(); System.out.print("請輸入分數:"); Score1= scan.nextInt(); System.out.print("請輸入第2位同學的名字:"); Name2= scan.nextLine(); System.out.print("請輸入分數:"); Score2= scan.nextInt(); System.out.print("請輸入第3位同學的名字:"); Name3= scan.nextLine(); System.out.print("請輸入分數:"); Score3= scan.nextInt(); ////////////////////////////////////////// // ※判斷區 ///////////////////////////////////////// if (Score1 >= Max) Max=Score1; if (Score2 >= Max) Max=Score2; if (Score3 >= Max) Max=Score3; ///////////////////////////////////////// // ※輸出 區 /////////////////////////////////////////// if (Score1==Max) System.out.print(Name1+"同學考得最高分"+Score1+"。"); if (Score2==Max) System.out.print(Name2+"同學考得最高分"+Score2+"。"); if (Score3==Max) System.out.print(Name3+"同學考得最高分"+Score3+"。"); ////////////////////////////////////////// } } //程式結束 ----------------------------------------------------------- 執行畫面如下: 請輸入第1位同學的名字:天線寶寶 請輸入分數:99 請輸入第2位同學的名字:請輸入分數:迪西 Exception in thread "main" java.util.InputMismatchException at java.util.Scanner.throwFor(Unknown Source) at java.util.Scanner.next(Unknown Source) at java.util.Scanner.nextInt(Unknown Source) at java.util.Scanner.nextInt(Unknown Source) at score.main(score.java:42) C:\> 我沒辦法繼續輸入了,未知的來源? 有人可以幫我解釋一下嗎? 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 210.60.11.159

12/04 16:03, , 1F
因為我語法都是自己查知識自己打的
12/04 16:03, 1F

12/04 16:16, , 2F
剛剛改成 scan.next就好了~沒有加上line
12/04 16:16, 2F

12/05 09:37, , 3F
scan.nextLine會把你下一個println指令也印出來所以錯誤
12/05 09:37, 3F
文章代碼(AID): #19Dul3D7 (java)