




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、JAVA 程 序 設(shè) 計(jì)實(shí)訓(xùn)實(shí) 驗(yàn) 報(bào) 告班級(jí): 學(xué)號(hào): 姓名: 實(shí)驗(yàn)一 開(kāi)發(fā)簡(jiǎn)單的Java應(yīng)用程序一、上機(jī)目標(biāo):開(kāi)發(fā)“我行我素”購(gòu)物管理系統(tǒng):1.制作系統(tǒng)登錄菜單 2.制作系統(tǒng)主菜單3.制作客戶(hù)信息管理菜單二、訓(xùn)練技能點(diǎn)1.熟悉用Eclipse編寫(xiě)Java程序2.會(huì)使用輸出語(yǔ)句從控制臺(tái)輸出信息3.會(huì)進(jìn)行代碼排錯(cuò)三、實(shí)驗(yàn)內(nèi)容階段1:訓(xùn)練要點(diǎn):· 使用Eclipse平臺(tái)開(kāi)發(fā)Java程序· Java輸出語(yǔ)句需求說(shuō)明:· 從控制臺(tái)輸出一行信息:歡迎使用開(kāi)心購(gòu)物管理系統(tǒng)1.0版實(shí)現(xiàn)思路:· 創(chuàng)建一個(gè)Java項(xiàng)目:ShopManagementSystem·
2、; 創(chuàng)建一個(gè)文本文件:LoginMenu1.java· 編寫(xiě)程序框架· 編寫(xiě)輸出語(yǔ)句· 編寫(xiě)注釋 代碼:public class LoginMenu1 public static void main(String args) System.out.println(" "); 階段2:需求說(shuō)明:· 從控制臺(tái)輸出多行信息空行代碼:public class LoginMenu2 public static void main(String args) /*從控制臺(tái)輸出信息*/System.out.println("*n"
3、);System.out.println( );System.out.println( );System.out.println("*");階段3:訓(xùn)練要點(diǎn):· 使用n和t控制輸出格式需求說(shuō)明:· 從控制臺(tái)輸出購(gòu)物管理系統(tǒng)的登錄菜單實(shí)現(xiàn)思路:· 創(chuàng)建文件:LoginMenu.java· 結(jié)合使用n和t控制菜單輸出格式代碼:public class LoginMenu /* 顯示系統(tǒng)登錄菜單*/ public static void main(String args) System.out.println("nnttt歡迎使用
4、我行我素購(gòu)物管理系統(tǒng)1.0版nn"); System.out.println( ); System.out.println( ); System.out.println("* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *n"); System.out.print("請(qǐng)選擇,輸入數(shù)字:"); 階段4:需求說(shuō)明:· 輸出兩個(gè)菜單 1、系統(tǒng)主菜單 MainMenu.java 代碼:2、客戶(hù)信息管理菜單 CustMMenu.java代
5、碼:階段5:訓(xùn)練要點(diǎn):· 代碼排錯(cuò)技巧需求說(shuō)明:· 糾正程序中的錯(cuò)誤,使其輸出“我喜歡Java程序”public class wrongcode public static void Main() /*打印輸出一條信息system.out.println(我喜歡Java程序)/修改為:system.out.println(“我喜歡Java程序”);加”和;實(shí)驗(yàn)二 變量、數(shù)據(jù)類(lèi)型和運(yùn)算符一、上機(jī)目標(biāo):升級(jí)“我行我素”購(gòu)物管理系統(tǒng),完成以下功能: 購(gòu)物結(jié)算 打印購(gòu)物小票 計(jì)算會(huì)員積分 模擬幸運(yùn)抽獎(jiǎng) 計(jì)算員工工資二、訓(xùn)練技能點(diǎn): 會(huì)聲明和使用變量 能熟練使用常用運(yùn)算符 賦值運(yùn)算符
6、:= 算術(shù)運(yùn)算符:+、 - 、*、 /、 %三、實(shí)驗(yàn)內(nèi)容階段1:訓(xùn)練要點(diǎn):· 運(yùn)算符(*、=)、從控制臺(tái)輸出信息需求說(shuō)明:· 根據(jù)購(gòu)物清單及會(huì)員級(jí)別:1、計(jì)算消費(fèi)金額客戶(hù)購(gòu)買(mǎi)商品單價(jià)個(gè)數(shù)折扣1T恤¥420.78 19.52網(wǎng)球¥45 3無(wú)2、以下表形式輸出結(jié)果(不要求表格邊框) 客戶(hù)消費(fèi)金額1張三?2李四?實(shí)現(xiàn)思路:· 聲明變量存放商品信息(單價(jià)、購(gòu)物個(gè)數(shù)) · 根據(jù)不同折扣,分別計(jì)算消費(fèi)金額· 使用“+”連接輸出信息,使用t控制輸出格式 代碼:public class Pay1 public static void main(String a
7、rgs) double shirtPrice = 420.78; /恤單價(jià)int shirtNo = 1; /購(gòu)恤件數(shù)double tennisPrice = 45; /網(wǎng)球單價(jià)int tennisNo = 3; /購(gòu)網(wǎng)球個(gè)數(shù)double shirtMoney = ; /張三消費(fèi)金額double tennisMoney = ; /李四消費(fèi)金額System.out.println("客戶(hù)t" + "消費(fèi)金額");System.out.println("張三t" + shirtMoney);System.out.println( );階段
8、2:需求說(shuō)明:· 張三(享8折)購(gòu)物如右表所示,結(jié)算時(shí)支付1500元 1、計(jì)算消費(fèi)總額并打印購(gòu)物小票(如下圖) 商品單價(jià)個(gè)數(shù)T恤2452網(wǎng)球鞋5701網(wǎng)球拍32012、計(jì)算購(gòu)物獲得的會(huì)員積分(100元獲3分)代碼:階段3:訓(xùn)練要點(diǎn):· 運(yùn)算符(%、/)需求說(shuō)明:· 幸運(yùn)抽獎(jiǎng):凡是4位會(huì)員卡號(hào)的各個(gè)位上的數(shù)字之和大于20,則為幸運(yùn)客戶(hù),有精美Mp3送上,編程計(jì)算8349各位數(shù)字之和實(shí)現(xiàn)思路:· 結(jié)合使用“/”和“%”分解獲得各位數(shù)字· 計(jì)算各位數(shù)字之和代碼:階段4:需求說(shuō)明:· 商場(chǎng)為員工提供了基本工資(3000元)、物價(jià)津貼及房租津貼
9、,其中物價(jià)津貼為基本工資的40%,房租津貼為基本工資的25%。編程計(jì)算實(shí)領(lǐng)工資代碼:實(shí)驗(yàn)三 運(yùn)算符和條件結(jié)構(gòu)一、 上機(jī)目標(biāo)升級(jí)“我行我素”購(gòu)物管理系統(tǒng),完成以下功能: 錄入會(huì)員信息 模擬幸運(yùn)抽獎(jiǎng) 菜單切換 計(jì)算會(huì)員折扣二、訓(xùn)練技能點(diǎn): 會(huì)使用關(guān)系運(yùn)算符和邏輯運(yùn)算符 會(huì)從控制臺(tái)獲取鍵盤(pán)輸入的數(shù)據(jù) 會(huì)使用if-else和多重if條件結(jié)構(gòu) 會(huì)使用switch結(jié)構(gòu)三、 實(shí)驗(yàn)內(nèi)容階段1:訓(xùn)練要點(diǎn):· 獲取鍵盤(pán)輸入· 條件運(yùn)算符· 邏輯運(yùn)算符需求說(shuō)明:· 錄入會(huì)員信息(會(huì)員號(hào)、會(huì)員生日、會(huì)員積分)并顯示錄入信息· 升級(jí)功能:判斷錄入是否合法(會(huì)員號(hào)必為4位
10、整數(shù)),錄入合法,顯示錄入的信息;不合法,顯示“錄入失敗”實(shí)現(xiàn)思路: · 完成信息錄入:使用Scanner獲取用戶(hù)輸入,存儲(chǔ)在變量中public class AddCust1 public static void main(String args) System.out.println("我行我素購(gòu)物管理系統(tǒng) > 客戶(hù)信息管理 > 添加客戶(hù)信息n");/* 錄入會(huì)員信息 */Scanner input = new Scanner(System.in);System.out.print("請(qǐng)輸入會(huì)員號(hào)(<4位整數(shù)>):")
11、;int custNo = input.nextInt();System.out.print("請(qǐng)輸入會(huì)員生日(月/日<用兩位數(shù)表示>):");String custBirth = input.next();System.out.print("請(qǐng)輸入積分:");int custScore = input.nextInt();/* 顯示錄入的信息 */System.out.println("n已錄入的會(huì)員信息是: ");System.out.println(custNo + "t" + custBirth
12、 + "t" + custScore);· 升級(jí)功能:判斷會(huì)員號(hào)是否合法代碼:階段2:需求說(shuō)明:· 商場(chǎng)實(shí)行新的抽獎(jiǎng)規(guī)則:會(huì)員號(hào)的百位數(shù)字等于產(chǎn)生的隨機(jī)數(shù)字即為幸運(yùn)會(huì)員?;诘?章階段3,實(shí)現(xiàn):1、從鍵盤(pán)接收會(huì)員號(hào)2、使用if-else實(shí)現(xiàn)幸運(yùn)抽獎(jiǎng) 代碼:階段3:訓(xùn)練要點(diǎn):· switch結(jié)構(gòu)· 多重if結(jié)構(gòu)需求說(shuō)明:· 實(shí)現(xiàn)從登錄菜單進(jìn)入二級(jí)菜單 1、輸入1:進(jìn)入主菜單 2、輸入2:退出并顯示“謝謝您的使用!” 3、輸入其他數(shù)字:顯示“輸入錯(cuò)誤”實(shí)現(xiàn)思路:· 在第1章階段3登錄菜單程序(LoginMenu.jav
13、a)基礎(chǔ)上完成· 從控制臺(tái)接收一個(gè)數(shù)字 · 使用switch結(jié)構(gòu)或多重if結(jié)構(gòu)實(shí)現(xiàn)菜單切換 代碼:階段4:需求說(shuō)明:· 會(huì)員根據(jù)積分享受不同折扣,如右表。使用多重if結(jié)構(gòu)計(jì)算會(huì)員折扣 折扣x 20009折2000 x 40008折4000 x 80007折x 80006折代碼:實(shí)驗(yàn)四 循環(huán)結(jié)構(gòu)(一)一、 上機(jī)目標(biāo):升級(jí)“我行我素”購(gòu)物管理系統(tǒng),完成以下功能: 查詢(xún)商品價(jià)格 升級(jí)購(gòu)物結(jié)算 升級(jí)菜單切換 升級(jí)幸運(yùn)抽獎(jiǎng)二、訓(xùn)練技能點(diǎn): 會(huì)使用while循環(huán) 會(huì)使用do-while循環(huán) 會(huì)進(jìn)行代碼跟蹤調(diào)試三、實(shí)驗(yàn)內(nèi)容:階段1:訓(xùn)練要點(diǎn):· while循環(huán)結(jié)構(gòu)需求
14、說(shuō)明:· 編程實(shí)現(xiàn):計(jì)算100以?xún)?nèi)(包括100)的偶數(shù)之和· 觀察在每一次循環(huán)中變量值的變化代碼:階段2:訓(xùn)練要點(diǎn):· while循環(huán)結(jié)構(gòu)需求說(shuō)明:· 實(shí)現(xiàn)商品查價(jià):1、輸入商品編號(hào),顯示商品價(jià)格2、循環(huán)查詢(xún)3、輸入“n”退出循環(huán)編號(hào)商品價(jià)格1T恤2452網(wǎng)球鞋5703網(wǎng)球拍320實(shí)現(xiàn)思路及關(guān)鍵代碼:· 創(chuàng)建LookPrice.java· 聲明變量存儲(chǔ)商品信息 · 循環(huán)體:從鍵盤(pán)接收商品編號(hào),使用switch語(yǔ)句選擇該編號(hào)對(duì)應(yīng) 的商品信息,并輸出商品名稱(chēng)和商品價(jià)格· 循環(huán)條件· 獲取用戶(hù)輸入,為“n”時(shí)結(jié)
15、束循環(huán)代碼:階段3需求說(shuō)明:· 基于階段2,升級(jí)實(shí)驗(yàn)二階段2購(gòu)物結(jié)算功能: 1、循環(huán)輸入商品編號(hào)和購(gòu)物數(shù)量,計(jì)算消費(fèi)金額并累加到總金額 2、輸入“n”開(kāi)始結(jié)賬(假設(shè)享8折)3、輸入實(shí)付金額,計(jì)算找零代碼:階段4:訓(xùn)練要點(diǎn):· do-while循環(huán)結(jié)構(gòu)需求說(shuō)明:· 進(jìn)入系統(tǒng)主菜單,提示輸入數(shù)字選擇進(jìn)入相應(yīng)菜單。用戶(hù)輸入錯(cuò)誤,可以重復(fù)輸入,直到輸入正確,執(zhí)行相應(yīng)的操作后退出循環(huán)代碼:階段5:需求說(shuō)明:· 升級(jí)實(shí)驗(yàn)三階段2幸運(yùn)抽獎(jiǎng): 1、循環(huán)輸入4位會(huì)員號(hào),判斷是否為幸運(yùn)會(huì)員 2、輸入“n”退出抽獎(jiǎng)代碼:實(shí)驗(yàn)五 循環(huán)結(jié)構(gòu)(二)一、上機(jī)目標(biāo):升級(jí)“我行我素”購(gòu)物
16、管理系統(tǒng),完成以下功能: 統(tǒng)計(jì)顧客的年齡層次 循環(huán)錄入會(huì)員信息 登錄時(shí)用戶(hù)信息驗(yàn)證二、訓(xùn)練技能點(diǎn): 會(huì)使用for循環(huán)結(jié)構(gòu) 會(huì)使用break和continue控制循環(huán)停止或繼續(xù) 會(huì)進(jìn)行代碼跟蹤調(diào)試三、實(shí)驗(yàn)內(nèi)容:階段1:訓(xùn)練要點(diǎn):· for循環(huán)結(jié)構(gòu)需求說(shuō)明:· 為提高銷(xiāo)售額,對(duì)顧客的年齡層次(30歲之上/之下)進(jìn)行調(diào)查(樣本數(shù)為10),計(jì)算兩個(gè)層次的顧客比例實(shí)現(xiàn)思路及關(guān)鍵代碼:· 創(chuàng)建AgeRate.java· 定義計(jì)算器變量old和young · 循環(huán)錄入被調(diào)查的10位顧客的年齡for(int i = 0; i<10; i+) /錄入顧客年
17、齡 /統(tǒng)計(jì)各層次的人數(shù)· 計(jì)算各層次比例double oldRate = old / 10.0 ;代碼:階段2:訓(xùn)練要點(diǎn):· for循環(huán)結(jié)構(gòu)· continue語(yǔ)句需求說(shuō)明:· 實(shí)現(xiàn)循環(huán)錄入客戶(hù)信息: 1、循環(huán)錄入3位客戶(hù)信息 2、判斷會(huì)員號(hào)是否合法(4位整數(shù)) 3、會(huì)員號(hào)合法,顯示錄入的信息,否則顯示錄入失敗實(shí)現(xiàn)思路:· 基于實(shí)驗(yàn)三階段1代碼AddCust.java擴(kuò)展 · 增加for循環(huán)結(jié)構(gòu)for(int i = 0; i<3; i+) /從鍵盤(pán)獲取信息 /判斷:如果會(huì)員號(hào)不合法,輸出錯(cuò)誤提示,繼續(xù)下一次循環(huán) /會(huì)員號(hào)合法則
18、輸出錄入的信息· 使用continue控制循環(huán)執(zhí)行過(guò)程代碼:階段3:需求說(shuō)明:· 實(shí)現(xiàn)用戶(hù)登錄時(shí)的信息驗(yàn)證:1、登錄時(shí)提示輸入用戶(hù)名和密碼并進(jìn)行驗(yàn)證2、如果輸入超過(guò)3次,程序結(jié)束3、根據(jù)3種匹配結(jié)果(信息匹配/信息不匹配/3次都不匹配),執(zhí)行不同的操作代碼:階段4:訓(xùn)練要點(diǎn):· 循環(huán)結(jié)構(gòu),break,斷點(diǎn)跟蹤需求說(shuō)明:· 一個(gè)球從100米高度自由落下,每次落地后反彈回原高度的一 半;再落下,求在第幾次之后反彈高度小于0.1米,并計(jì)算在這一次落地時(shí)共經(jīng)過(guò)多少米? 對(duì)代碼進(jìn)行跟蹤調(diào)試,使其輸出正確結(jié)果代碼:實(shí)驗(yàn)六循環(huán)和分支結(jié)構(gòu)綜合訓(xùn)練(階段練習(xí))一、上機(jī)目標(biāo)
19、從控制臺(tái)輸入 × × × ×年× ×月,從控制臺(tái)輸出該月日歷二、訓(xùn)練技能點(diǎn) 會(huì)使用分支結(jié)構(gòu)解決問(wèn)題 會(huì)使用循環(huán)結(jié)構(gòu)解決問(wèn)題三、實(shí)驗(yàn)內(nèi)容需求說(shuō)明:任務(wù)從控制臺(tái)輸入 × × × ×年× ×月,從控制臺(tái)輸出該月日歷(1900年1月1日是星期一)1、判斷該年是否是閏2、計(jì)算該月天數(shù)3、計(jì)算該月第一天是星期幾 4、按格式輸出該月日歷 階段劃分: 階段1分析業(yè)務(wù);實(shí)現(xiàn)從控制臺(tái)接收年和月,判斷是否是閏年 階段2 編程計(jì)算輸入月份的天數(shù) 階段3 編程計(jì)算輸入的月份距離1900年1月1日的天數(shù)
20、 階段4 編程計(jì)算輸入月份的第一天是星期× 階段5格式化輸出× ×年× ×月日歷階段1:需求說(shuō)明: · 實(shí)現(xiàn): 從控制臺(tái)接收年和月份,判斷輸入的年份是否是閏年 實(shí)現(xiàn)思路:判斷是否是閏年:能被4整除但不能被100整除;或者能被400整除 代碼:import java.util.Scanner;public class PrintCalendar1 public static void main(String args) System.out.println("*歡 迎 使 用 萬(wàn) 年 歷*"); Scanner in
21、put = new Scanner(System.in);System.out.print("n請(qǐng)選擇年份: ");int year = input.nextInt();System.out.print("n請(qǐng)選擇月份: ");int month = input.nextInt();System.out.println();int days = 0; / 存儲(chǔ)當(dāng)月的天數(shù)boolean isRn;/* 判斷是否是閏年 */if (year % 4 = 0 && !(year % 100 = 0) | year % 400 = 0) isRn
22、 = true; / 閏年 else isRn = false;/ 平年if (isRn) System.out.println(year + " 閏年"); else System.out.println(year + " 平年");階段2:需求說(shuō)明: · 擴(kuò)展階段1,實(shí)現(xiàn)2:計(jì)算輸入月份的天數(shù) 實(shí)現(xiàn)思路:閏年2月:29天 平年2月:28天代碼:/* 計(jì)算當(dāng)月的天數(shù) */switch (month) case 1: case 3: case 5: case 7: case 8: case 10: case 12:days = 31;break
23、; case 2:if (isRn) days = 29; else days = 28;break; default:days = 30;break;System.out.println(month + "t共" + days + "天");階段3:需求說(shuō)明: · 擴(kuò)展階段2,實(shí)現(xiàn)3:· 1、計(jì)算輸入月份距離1900年1月1日的天數(shù)· 2、計(jì)算輸入月份之前的天數(shù)(從當(dāng)年年初開(kāi)始)· 3、求和 實(shí)現(xiàn)思路:代碼:/* 計(jì)算輸入的年份之前的天數(shù) */int totalDays = 0;for (int i = 1900
24、; i < year; i+) /* 判斷閏年或平年,并進(jìn)行天數(shù)累加 */if (i % 4 = 0 && !(i % 100 = 0) | i % 400 = 0) / 判斷是否為閏年totalDays = totalDays + 366; / 閏年366天 else totalDays = totalDays + 365; / 平年365天System.out.println("輸入年份距離1900年1月1日的天數(shù):" + totalDays);/* 計(jì)算輸入月份之前的天數(shù) */int beforeDays = 0;for (int i = 1;
25、i <= month; i+) switch (i) case 1: case 3: case 5: case 7: case 8: case 10: case 12:days = 31;break; case 2:if (isRn) days = 29; else days = 28;break; default:days = 30;break;if (i < month) beforeDays = beforeDays + days;totalDays = totalDays + beforeDays; / 距離1900年1月1日的天數(shù)System.out.println(&q
26、uot;輸入月份距離1900年1月1日的天數(shù):" + totalDays);System.out.println("當(dāng)前月份的天數(shù):" + days);階段4:需求說(shuō)明: · 擴(kuò)展階段3,已知該月之前的天數(shù),計(jì)算輸入月份的第一天是星期×實(shí)現(xiàn)思路:從1900年1月1日(星期一)開(kāi)始推算:星期× = 1 + 天數(shù)差 % 7 周一周六:16 周日:0代碼:/* 計(jì)算星期幾 */int firstDayOfWeek; / 存儲(chǔ)當(dāng)月第一天是星期幾:星期日為0,星期一星期六為16int temp = 1 + totalDays % 7; / 從1
27、900年1月1日推算if (temp = 7) / 求當(dāng)月第一天firstDayOfWeek = 0; else firstDayOfWeek = temp;System.out.println("該月第一天是: " + firstDayOfWeek);階段5:需求說(shuō)明: · 格式化輸出× ×年× ×月日歷實(shí)現(xiàn)思路:分析下面語(yǔ)句的輸出結(jié)果System.out.println("星期日t星期一t星期二t星期三t星期四t星期五t星期六");for(int i = 1 ; i <= 7 ; i+) Sys
28、tem.out.print(i + "t");源代碼:/* 輸出日歷 */System.out.println("星期日t星期一t星期二t星期三t星期四t星期五t星期六");for (int nullNo = 0; nullNo < firstDayOfMonth; nullNo+) System.out.print("t"); / 輸出空格for (int i = 1; i <= days; i+) System.out.print(i + "t");if (totalDays + i - 1) %
29、7 = 5) / 如果當(dāng)天為周六,輸出換行System.out.println();實(shí)驗(yàn)七 對(duì)象和類(lèi)一、上機(jī)目標(biāo):升級(jí)“我行我素”購(gòu)物管理系統(tǒng),完成以下功能: 實(shí)現(xiàn)管理員類(lèi) 實(shí)現(xiàn)禮品類(lèi) 修改管理員密碼 禮品饋贈(zèng)二、訓(xùn)練技能點(diǎn): 會(huì)定義一個(gè)類(lèi) 會(huì)創(chuàng)建一個(gè)對(duì)象 會(huì)編寫(xiě)和使用類(lèi)的toString()方法三、實(shí)驗(yàn)內(nèi)容:階段1:訓(xùn)練要點(diǎn):· 定義一個(gè)類(lèi)· toString()方法需求說(shuō)明:· 定義管理員類(lèi) 管理員類(lèi)屬性:用戶(hù)名密碼方法:顯示管理員信息實(shí)現(xiàn)思路:· 創(chuàng)建Manager類(lèi)· 定義其屬性:username和password · 定義其
30、toString()方法public String toString( ) return "管理員信息是: " + username + "t" + password; 源代碼:階段2:需求說(shuō)明:· 定義禮品類(lèi) 禮品類(lèi)(Gift)屬性:禮品名(name)禮品價(jià)值(price)方法:顯示禮品信息代碼:階段3:訓(xùn)練要點(diǎn):· 創(chuàng)建類(lèi)的對(duì)象· 使用類(lèi)的屬性和toString()方法需求說(shuō)明:· 創(chuàng)建管理員對(duì)象:1、根據(jù)右表所示創(chuàng)建兩個(gè)管理員 2、顯示管理員信息用戶(hù)名密碼manager0000accp1111實(shí)現(xiàn)思路:
31、83; 創(chuàng)建測(cè)試類(lèi) · 編寫(xiě)入口程序public static void main(String args) /main方法主體· 創(chuàng)建管理員對(duì)象并顯示對(duì)象信息Manager manager = new Manager();manager.username = "manager"manager.password = "0000"System.out.println(manager);源代碼:階段4:需求說(shuō)明:· 更改管理員登錄信息: 1、輸入舊的用戶(hù)名和密碼,如果正確,方有權(quán)限更新 2、從鍵盤(pán)獲取新的用戶(hù)名和密碼,進(jìn)行更新
32、代碼:階段5:需求說(shuō)明:· 購(gòu)物中心為酬謝廣大客戶(hù),推出禮品饋贈(zèng)活動(dòng),如表所示,循環(huán)輸入會(huì)員號(hào)和積分,用面向?qū)ο笏枷雽?shí)現(xiàn)禮品饋贈(zèng)積分獎(jiǎng)品800015000手機(jī) x15000筆記本電腦代碼:實(shí)驗(yàn)八 類(lèi)的方法一、上機(jī)目標(biāo)升級(jí)“我行我素”購(gòu)物管理系統(tǒng),完成以下功能: 創(chuàng)建我行我素購(gòu)物管理系統(tǒng)項(xiàng)目結(jié)構(gòu) 系統(tǒng)入口程序 菜單類(lèi) 菜單切換二、訓(xùn)練技能點(diǎn) 會(huì)編寫(xiě)類(lèi)的成員方法 會(huì)進(jìn)行方法調(diào)用 會(huì)創(chuàng)建包和導(dǎo)入包三、實(shí)驗(yàn)內(nèi)容階段1:訓(xùn)練要點(diǎn):· 創(chuàng)建包,在包中創(chuàng)建類(lèi)需求說(shuō)明:· 創(chuàng)建ShopManagementSystem項(xiàng)目結(jié)構(gòu): 2、在包c(diǎn)om.wxws.sms中創(chuàng)建管理員類(lèi),設(shè)置
33、默認(rèn)的管理員名“accp”,默認(rèn)密碼“0000”代碼:階段2:訓(xùn)練要點(diǎn):· 創(chuàng)建類(lèi)的成員方法需求說(shuō)明:· 閱讀已給出的Menu類(lèi)· 添加showMainMenu()方法菜單類(lèi)屬性:無(wú)方法:顯示登錄菜單 顯示主菜單顯示客戶(hù)信息管理菜單顯示真情回饋菜單實(shí)現(xiàn)思路:· 編寫(xiě)方法框架 public void showMainMenu() /顯示主菜單· 編寫(xiě)方法主體:拷貝第4章階段4 MainMenu.java相關(guān)代碼源代碼:階段3:需求說(shuō)明:· 實(shí)現(xiàn)系統(tǒng)入口程序: 1、加載系統(tǒng)管理員信息 2、顯示系統(tǒng)登錄菜單 3、實(shí)現(xiàn)登錄菜單功能,如表所示選
34、擇11)驗(yàn)證管理員密碼2)顯示主菜單選擇2輸出“謝謝您的使用”退出程序?qū)崿F(xiàn)思路及關(guān)鍵代碼:· 創(chuàng)建帶main()的類(lèi)StartSMS · 創(chuàng)建系統(tǒng)管理員對(duì)象,加載系統(tǒng)保存的管理員信息· 創(chuàng)建一個(gè)菜單類(lèi)對(duì)象,調(diào)用其showLoginMenu()方法顯示系統(tǒng)登錄菜單· 提示輸入信息· 根據(jù)輸入信息進(jìn)行驗(yàn)證代碼:階段4:需求說(shuō)明:· 改寫(xiě)Menu類(lèi)的showMainMenu()方法,實(shí)現(xiàn)三個(gè)菜單項(xiàng)功能: 1、選擇1顯示客戶(hù)信息管理菜單 調(diào)用showCustMMenu() 2、選擇3顯示真情回饋菜單 調(diào)用showSendGMenu() 3、選
35、擇4注銷(xiāo):回到開(kāi)始登錄菜單 調(diào)用showLoginMenu()· 改寫(xiě)Menu類(lèi)的showCustMMenu()方法,實(shí)現(xiàn)輸入0返回主菜單 · 改寫(xiě)Menu類(lèi)的showSendMenu()方法,實(shí)現(xiàn)輸入0返回主菜單 調(diào)用showMainMenu()代碼:實(shí)驗(yàn)九 數(shù)組一、上機(jī)目標(biāo)升級(jí)“我行我素”購(gòu)物管理系統(tǒng),完成以下功能: 實(shí)現(xiàn)會(huì)員信息、商品信息的定義和初始化 顯示當(dāng)前所有會(huì)員信息 添加新會(huì)員 實(shí)現(xiàn)幸運(yùn)大放送二、訓(xùn)練技能點(diǎn) 會(huì)定義和使用數(shù)組 會(huì)操作數(shù)組進(jìn)行運(yùn)算三、實(shí)驗(yàn)內(nèi)容階段1:訓(xùn)練要點(diǎn):· 定義數(shù)組· 初始化數(shù)組需求說(shuō)明:· 定義3個(gè)數(shù)組,分別
36、存儲(chǔ)會(huì)員號(hào)、會(huì)員生日和會(huì)員積分 數(shù)組名類(lèi)型custNointcustBirthStringcustScoreint會(huì)員號(hào)會(huì)員生日會(huì)員積分162306/265000154504/082200實(shí)現(xiàn)思路:· 創(chuàng)建Data類(lèi)· 定義Data類(lèi)的3個(gè)數(shù)組成員變量存儲(chǔ)會(huì)員信息int custNo = new int100; /會(huì)員號(hào)String custBirth = new String100; /會(huì)員生日int custScore = new int100; /會(huì)員積分· 定義Data類(lèi)的成員方法initial(),執(zhí)行數(shù)組初始化操作,相關(guān)數(shù)組信息一一對(duì)應(yīng)custNo 0
37、 = 1623;custBirth 0 = "06/26"custScore 0 = 5000; 源代碼:階段2:需求說(shuō)明:· 擴(kuò)展Data類(lèi):1、再定義兩個(gè)數(shù)組,分別存儲(chǔ)商品名稱(chēng)和商品價(jià)格數(shù)組名類(lèi)型goodsNameStringgoodsPricedouble2、初始化商品信息商品名商品價(jià)格addidas運(yùn)動(dòng)鞋880addidasT恤420.78Nike運(yùn)動(dòng)鞋900代碼:階段3:訓(xùn)練要點(diǎn):· 使用數(shù)組存儲(chǔ)數(shù)據(jù)需求說(shuō)明:· 編寫(xiě)客戶(hù)管理類(lèi)CustManagement,實(shí)現(xiàn)添加新會(huì)員功能:從鍵盤(pán)獲取用戶(hù)輸入,保存在數(shù)組中第一個(gè)空位 實(shí)現(xiàn)思路:
38、183; 創(chuàng)建客戶(hù)管理類(lèi)CustManagement · 完成數(shù)據(jù)加載Data data = new Data(); /創(chuàng)建一個(gè)數(shù)據(jù)類(lèi)對(duì)象public void setData() /加載數(shù)據(jù) data.initial();· 編寫(xiě)方法add()實(shí)現(xiàn)添加新會(huì)員功能public void add() /提示用戶(hù)輸入會(huì)員號(hào)、生日和積分 /查詢(xún)已存儲(chǔ)的會(huì)員信息的下一個(gè)位置的下標(biāo) /一一對(duì)應(yīng)向3個(gè)數(shù)組中添加數(shù)組元素源代碼:階段4:需求說(shuō)明:· 擴(kuò)展客戶(hù)管理類(lèi)CustManagement,實(shí)現(xiàn)顯示當(dāng)前會(huì)員信息功能,并編寫(xiě)測(cè)試類(lèi)測(cè)試顯示和添加信息功能代碼: 階段5:需求說(shuō)明:
39、· 閱讀代碼,說(shuō)明禮品管理類(lèi)sendGoldenCust()方法執(zhí)行的過(guò)程和實(shí)現(xiàn)的功能 代碼:實(shí)驗(yàn)十字符串一、上機(jī)目標(biāo)升級(jí)“我行我素” 購(gòu)物管理系統(tǒng),完成以下功能: 系統(tǒng)數(shù)據(jù)傳遞 自動(dòng)計(jì)算會(huì)員折扣 完善購(gòu)物小票 信息有效性驗(yàn)證二、訓(xùn)練技能點(diǎn) 會(huì)使用String的相關(guān)方法 會(huì)使用帶參數(shù)的方法三、實(shí)驗(yàn)內(nèi)容階段1:訓(xùn)練要點(diǎn):· 帶參方法的編寫(xiě)和調(diào)用需求說(shuō)明:· 實(shí)現(xiàn)數(shù)據(jù)傳遞:程序入口(數(shù)據(jù)初始化)菜單類(lèi)客戶(hù)管理類(lèi)購(gòu)物結(jié)算類(lèi)禮品管理類(lèi)數(shù)據(jù)傳遞 1、開(kāi)始時(shí)加載系統(tǒng)數(shù)據(jù): 會(huì)員信息、商品信息和管理員信息 2、系統(tǒng)運(yùn)行時(shí),數(shù)據(jù)在不同界面間進(jìn)行傳遞,但始終保持對(duì)同一個(gè)數(shù)組進(jìn)行操作
40、實(shí)現(xiàn)思路:· 在實(shí)驗(yàn)七階段3StartSMS的main()中添加代碼加載系統(tǒng)數(shù)據(jù)· 在實(shí)驗(yàn)七產(chǎn)生的Menu類(lèi)中編寫(xiě)setData(<參數(shù)列表>),用于獲得系統(tǒng)數(shù)據(jù)Data data = new Data(); data.initial();1、編寫(xiě)類(lèi)成員變量/*商品信息*/String goodsName;double goodsPrice; /*會(huì)員信息*/int custNo;String custBirth;int custScore; 2、編寫(xiě)setData方法public void setData(String goodsName1, double g
41、oodsPrice1, int custNo1, String custBirth1, int custScore1) goodsName = goodsName1; goodsPrice = goodsPrice1; custNo = custNo1; custBirth = custBirth1; custScore = custScore1;· 在main()中添加代碼Menu menu = new Menu();menu.setData(data.goodsName, data.goodsPrice, data.custNo, data.custBirth, data.cus
42、tScore);menu. showLoginMenu();源代碼:階段2:需求說(shuō)明:· 擴(kuò)展購(gòu)物結(jié)算,自動(dòng)計(jì)算會(huì)員折扣: 1、已知會(huì)員號(hào),根據(jù)會(huì)員號(hào)查找目前的積分 2、計(jì)算會(huì)員所享受的折扣代碼:階段3:訓(xùn)練要點(diǎn):· StringBuffer需求說(shuō)明:· 基于階段3擴(kuò)展購(gòu)物結(jié)算程序: 1、使用StringBuffer存儲(chǔ)購(gòu)物信息(商品名、數(shù)量和消費(fèi)額) 2、打印購(gòu)物小票 3、測(cè)試系統(tǒng)購(gòu)物結(jié)算功能實(shí)現(xiàn)思路及關(guān)鍵代碼:· 創(chuàng)建StringBuffer對(duì)象存儲(chǔ)購(gòu)物信息StringBuffer goodsList = new StringBuffer();
43、83; 使用StringBuffer的append()方法連接購(gòu)物信息goodsList.append("n" + name + "t" + "¥" + price+ "tt" + count + "tt" + "¥" + (price * count) +"t");· 打印購(gòu)物小票· 在Menu類(lèi)中添加代碼測(cè)試購(gòu)物結(jié)算程序Pay pay = new Pay(); /購(gòu)物結(jié)算pay.setData(goodsName, goodsPri
44、ce, custNo, custBirth, custScore); pay.calcPay(); 源代碼:階段4:需求說(shuō)明:· 閱讀Pay類(lèi)的方法returnLastMenu(),并將代碼補(bǔ)充完整· 測(cè)試該方法 代碼:實(shí)驗(yàn)十一類(lèi)和對(duì)象綜合訓(xùn)練(階段練習(xí))一、上機(jī)目標(biāo) 類(lèi)和對(duì)象綜合訓(xùn)練二、訓(xùn)練技能點(diǎn) 會(huì)定義類(lèi),描述類(lèi)的屬性和方法 會(huì)創(chuàng)建和使用對(duì)象 會(huì)使用包組織Java工程三、實(shí)驗(yàn)內(nèi)容實(shí)現(xiàn)人機(jī)互動(dòng)版猜拳游戲,運(yùn)行效果如下圖所示: 3.1、階段劃分: 第一部分 :階段小結(jié) 階段小結(jié) 上機(jī)、作業(yè)共性問(wèn)題講解 第二部分:練習(xí)(120分鐘) 階段1· 分析業(yè)務(wù);抽象出類(lèi);描
45、述類(lèi)的特征和行為;創(chuàng)建用戶(hù)類(lèi) 階段2 · 創(chuàng)建計(jì)算機(jī)類(lèi) 階段3 · 創(chuàng)建游戲類(lèi),編寫(xiě)它的方法:初始化、計(jì)算對(duì)戰(zhàn)結(jié)果、顯示結(jié)果 階段4· 編寫(xiě)游戲類(lèi)的方法:開(kāi)始游戲 階段5· 編寫(xiě)入口程序 第三部分(20分鐘) 總結(jié)3.2階段小結(jié) 會(huì)定義類(lèi),描述類(lèi)的特征和行為 如何定義類(lèi)的一個(gè)方法? 類(lèi)和對(duì)象的區(qū)別? 會(huì)創(chuàng)建和使用對(duì)象 創(chuàng)建對(duì)象的語(yǔ)法? 如何使用別的對(duì)象的方法?如何使用同一個(gè)類(lèi)的方法? 程序入口main方法可以直接使用類(lèi)的方法嗎? 會(huì)使用包組織Java工程 為什么需要使用包?它的含義?在程序中的位置? 什么情況下要導(dǎo)入包,舉例? 語(yǔ)法結(jié)構(gòu)?3.3、階段1&
46、#183; 需求說(shuō)明:分析業(yè)務(wù)抽象出類(lèi)、類(lèi)的特征和行為創(chuàng)建用戶(hù)類(lèi)· 實(shí)現(xiàn)思路及關(guān)鍵代碼:分析業(yè)務(wù),抽象出類(lèi)、類(lèi)的特征和行為 創(chuàng)建用戶(hù)類(lèi):屬性:名稱(chēng)(初始值為“匿名”)、積分(初始值為0) 方法:出拳代碼:3.4、階段2· 需求說(shuō)明:創(chuàng)建計(jì)算機(jī)類(lèi) 屬性:名稱(chēng)(初始值為“匿名”)、積分(初始值為0) 方法:出拳 代碼:3.5、階段3· 需求說(shuō)明:創(chuàng)建游戲類(lèi) 屬性:甲方玩家(用戶(hù))、乙方玩家(計(jì)算機(jī))、對(duì)戰(zhàn)次數(shù)編寫(xiě)游戲類(lèi)方法1初始化編寫(xiě)游戲類(lèi)方法2計(jì)算并返回對(duì)戰(zhàn)結(jié)果編寫(xiě)游戲類(lèi)方法3顯示對(duì)戰(zhàn)結(jié)果 代碼:3.6、階段4· 需求說(shuō)明:編寫(xiě)游戲類(lèi)方法4開(kāi)始游戲代碼:3.7、階段5· 需求說(shuō)明:編寫(xiě)系統(tǒng)入口程序,調(diào)試運(yùn)行代碼:3.8、總結(jié)實(shí)驗(yàn)十二綜合練習(xí)一、上機(jī)任務(wù)基礎(chǔ)部分總復(fù)習(xí)二、訓(xùn)練技能點(diǎn)1、理解程序基本概念程序
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 個(gè)人主材合同范本
- 醫(yī)院規(guī)范用工合同范本
- 與物業(yè)簽訂廣告合同范本
- 浠水購(gòu)房合同范本
- 銀行居間付款合同范本
- 修建鄉(xiāng)村公路合同范本
- 醫(yī)院日常裝飾維修合同范本
- 協(xié)調(diào)服務(wù)合同范本
- 公房買(mǎi)給個(gè)人合同范本
- 上海吊車(chē)租用合同范本
- 2024年江蘇農(nóng)牧科技職業(yè)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫(kù)及參考答案
- 患者轉(zhuǎn)運(yùn)意外應(yīng)急預(yù)案
- 大學(xué)生國(guó)防教育教案第四章現(xiàn)代戰(zhàn)爭(zhēng)
- 人教版初中化學(xué)實(shí)驗(yàn)?zāi)夸?總表)
- AS9100航空航天質(zhì)量管理體系-要求培訓(xùn)教材
- 第2課+古代希臘羅馬【中職專(zhuān)用】《世界歷史》(高教版2023基礎(chǔ)模塊)
- Q-GDW 11711-2017 電網(wǎng)運(yùn)行風(fēng)險(xiǎn)預(yù)警管控工作規(guī)范
- 《桃樹(shù)下的小白兔》課件
- 電工儀表與測(cè)量(第六版)中職技工電工類(lèi)專(zhuān)業(yè)全套教學(xué)課件
- 強(qiáng)調(diào)句(完整版)-高三英語(yǔ)市公開(kāi)課一等獎(jiǎng)省賽課獲獎(jiǎng)?wù)n件
- 2022年4月自考00277行政管理學(xué)試題及答案含解析
評(píng)論
0/150
提交評(píng)論