實 驗 報 告
( 2017 / 2018學年 第2學期)
課程名稱 |
JAVA語言程序設計 |
|||||
實驗名稱 |
Java集成開發環境的安裝與使用、 Java變量、表達式與控制結構 |
|||||
實驗時間 |
2018 |
年 |
4 |
月 |
2 |
日 |
指導單位 |
計算機學院軟件教學中心 |
|||||
指導教師 |
許棣華 |
學生姓名 |
王利國 |
班級學號 |
B160209 |
學院(系) |
電子與光學工程學院,微電子學院 |
專 業 |
微電子科學與工程 |
實驗名稱 |
Java集成開發環境的安裝與使用、 Java變量、表達式與控制結構 |
指導教師 |
許棣華 |
|
|||||||
實驗類型 |
上機 |
實驗學時 |
2 |
實驗時間 |
|
|
|||||
一、 實驗目的 1. 熟練掌握Java開發環境的安裝和使用 2. 掌握Java變量、表達式 3. 熟練掌握三大控制結構,會編寫相關程序 |
|
||||||||||
二、實驗環境(實驗設備) 1. 每位學生配備計算機一台 2. 計算機需安裝好JDK和Eclipse |
|
||||||||||
三、實驗內容 1. 從鍵盤輸入3個整數,求最小值並輸出。 import java.util.*; /** * @Author liguo * @Description * @Data 2018-03-29 */ public class Test1 { public static void main(String[] args) { int[] a = new int[3]; Scanner in = new Scanner( System.in ); System.out.println("請輸入三個整數"); for (int i = 0; i < 3; i++) { a[i] = in.nextInt(); } Arrays.sort( a ); System.out.println("三個數中最小的數為"+a[0] ); } }
2. 從鍵盤輸入一個1-7之間的整數(如果輸入的數不滿足條件,則要求用戶重新輸入),輸出對應的英文單詞表達的星期幾。 import java.util.Scanner; /** * @Author liguo * @Description * @Data 2018-03-29 */ public class Test2 { public static void main(String[] args) { String[] a = {"Mondy", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"}; // for (String str : a) // System.out.println( str ); Scanner in = new Scanner( System.in ); lab: while (true) { System.out.println( "請輸入一個1到7之間的整數" ); int temp = in.nextInt(); if (temp >= 1 && temp <= 7) { System.out.println( "對應的英文單詞表達為" + a[temp - 1] ); break ; } else if (temp < 0 || temp > 7) continue lab; } } } 3. 用三種循環語句來實現輸出10~50之間的3的倍數,並規定一行輸出5個數。 For循環 import java.util.Scanner; /** * @Author liguo * @Description * @Data 2018-03-29 */ public class Test2 { public static void main(String[] args) { String[] a = {"Mondy", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"}; // for (String str : a) // System.out.println( str ); Scanner in = new Scanner( System.in ); lab: while (true) { System.out.println( "請輸入一個1到7之間的整數" ); int temp = in.nextInt(); if (temp >= 1 && temp <= 7) { System.out.println( "對應的英文單詞表達為" + a[temp - 1] ); break ; } else if (temp < 0 || temp > 7) continue lab; } } }
Do while 循環 /** * @Author liguo * @Description3. 用三種循環語句來實現輸出10~50之間的3的倍數,並規定一行輸出5個數。 * @Data 2018-03-29 */ public class Test3 { public static void main(String[] args) { int i = 10; int count = 0; do { if (i % 3 == 0) { System.out.print( i + " " ); count++; } if (count % 5 == 0) System.out.println(); i++; } while (i <= 50 && i >= 10); } }
While 循環 /** * @Author liguo * @Description3. 用三種循環語句來實現輸出10~50之間的3的倍數,並規定一行輸出5個數。 * @Data 2018-03-29 */ public class Test3 { int i = 10; int count = 0; while (i <= 50 && i >= 10){ if (i % 3 == 0) { System.out.print( i + " " ); count++; } if (count % 5 == 0) System.out.println(); i++; } } } 4. 編寫程序,輸出100-1000之間的水仙花數。所謂水仙花數是指一個3位數,其各位數字的立方和等於該數本身。 /** * @Author liguo * @Description 輸出100-1000之間的水仙花數。所謂水仙花數是指一個3位數,其各位數字的立方和等於該數本身。 * @Data 2018-03-29 */ public class Text4 { public static void main(String[] args) { System.out.println( "符合條件的水仙花數為" ); for (int i = 100; i <= 1000; i++) { int a = i / 100; int b = i % 100 / 10; int c = i % 10; if (a * a * a + b * b * b + c * c * c == i) { System.out.print( i + " " ); } } } }
5. 利用循環語句打印如下圖所示的圖案。 /** * @Author liguo * @Description 利用循環語句打印橫7縱4的倒三角形 * @Data 2018-03-29 */ public class Text5 { public static void main(String[] args) { for (int j = 0; j < 4; j++) { for (int i = 0; i < j; i++) System.out.print( " " ); for (int k = 0; k < 7 - 2 * j; k++) { System.out.print( "*" ); } System.out.println(); } } } |
|
||||||||||
四、實驗小結(包括問題和解決方法、心得體會等) 運行時的邏輯錯誤,編譯器是無法報出的,得自己調試才能找到。 邏輯錯誤: 第二題目,輸入相應數字,輸出相應的星期數的英文表達。 由於標簽的使用必須得套用循環結構,自己添加了 while(true){ 語句塊; } 運行時,沒有報錯,電腦直接開始卡頓, 究其原因是邏輯錯誤,沒有跳出循環,導致其陷入死循環而消耗資源。
|
|||||||||||
五、指導教師評語
|
|||||||||||
成 績 |
|
批閱人 |
|
日 期 |
|
||||||