




下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、實驗 1 Java 語言的基本語句練習一、實驗目的1 了解 Java 的數(shù)據(jù)類型2 掌握各種變量的聲明方式。3 理解運算符的優(yōu)先級。4 掌握 Java 基本數(shù)據(jù)類型、運算符與表達式、數(shù)組的使用方法。5 理解 Java 程序語法結構,掌握順序結構、選擇結構和循環(huán)結構語法的程序設計方法。6 通過以上內容,掌握 Java 語言的編程規(guī)則。二、實驗要求1. 編寫一個聲明 Java 不同數(shù)據(jù)類型變量的程序。2. 編寫一個使用運算符、表達式、變量的程序。3. 編寫一個使用 Java 數(shù)組的的程序。4. 編寫表達式語句、復合語句的程序。5. 編寫使用不同選擇結構的程序。6. 編寫使用不同循環(huán)結構結構的程序。
2、三、實驗內容(一) 聲明不同數(shù)據(jù)類型的變量1編寫聲明不同數(shù)據(jù)類型變量的程序文件。public class LX2_1 public static void main(Stringargs) byte b=0x55;short s=0x55ff;int i=1000000;long l=0xffffL;char c='a'float f=0.23F;double d=0.7E-3;boolean B=true;String S=" 這是字符串類數(shù)據(jù)類型SyStem.out.pri ntl n("字節(jié)型變量b="+b);SyStem.out.pri n
3、tl n("短整型變量S="+s);SyStem.out.pri ntl n("整型變量 i="+i);SyStem.out.pri ntl n("長整型變量l="+l);SyStem.out.pri ntl n("字符型變量C="+c);SyStem.out.pri ntl n("浮點型變量f="+f);SyStem.out.pri ntl n("雙精度變量d="+d);SyStem.out.pri ntl n("布爾型變量B="+B);SyStem.o
4、ut.pri ntl n("字符串類對象S ="+S);2 編譯并運行該程序,輸出如下結果:運行寧節(jié)型變量b = 85短整型變雖3 = 22015整型變量1 = LooOOOo長整型變屋1 = 65535寧符型變屋C = a浮煩型變屋f = 0.23雙f度變量d = 7.0E-4布爾型變量B = true字符串關對辣S =這是字符串4型輸出完成(耗時口秒)-正常終止(二) 了解變量的使用范圍1建立LX2_2.java文件,通過本程序了解變量的使用范圍,源代碼如下。PUbIiC class LX2_2 StatiC int i=10;PUbIiC StatiC void ma
5、in(String args) int k=10;SyStem.out.pri ntl n("i="+i);SyStem.out.pri ntln ("k="+k);SyStem.out.pri ntl n("i="+i);SyStem.out.pri ntln ("k="+k);/編譯時將出錯,已出k的使用范圍 2.編譯 LX2_2.java此時會出現(xiàn)錯誤提示如圖2.2所示。因為變量k在方法塊中聲明,在方法塊之外它是不存在的,所以編譯時會出錯。編鋒j ava: 10: CanrLat resolve 31aboL
6、symbol : VaEiabIe k location; CIaSS LX22System, u,t, PrintIn i rr=rr+k);A1 error圖2.23修改上面的程序,使其運行正確。package Ch 1;23 PUbHedaU KYZv2 (4 static Int j=lCtatit irt fc=10)PUbik atic VOid Tndtn(Stringl .rfl<)(7IJ TODO Auto s*r<t<idluo5 1Stem.pupt.pFFtln 'I=*1+/);SYStem Oat Pn ri( k '4);1 V
7、5tet OUt PrtndneI "5te1 out PMIItJn4 " k-"t);161/ 4.成功運行該程序。k-1©1=16k=l思考:LX2_2.java程序說明了什么問題?成員變量在整個類內有效,其有效性與它書寫的先后位置無關, 局部變量只在方法內有效,而且與其聲明的位置有關。(三)使用關系運算符和邏輯運算符1. 建立使用關系運算符和邏輯運算符的程序文件,源代碼如下。class LX2_3 PUbIiC StatiC void main(String args) int a=25, b=20, e=3, f=O; boolea n d=a
8、<b;2. 補充上面的程序代碼,編譯并運行該程序,結果如圖2.3所示。 ift"25fb"20/e3 fC"0因為關聚表送武a<b為假”所以直邏絶值為:false 因為亡非口且a化為日大于5所収綸出 /亡=a固為f值為所以輸出 E = O輸出完慮(耗時0秒)-正常終止圖2.3(四)使用數(shù)組1建立使用數(shù)組的程序,本程序建立了一個長度為5的1維數(shù)組,一個長度為 12的arr102=2;arr112=5;arr122=8;="+a0);="+a1);="+a2);數(shù)組, 源代碼如下:PUbIiC class LX2_4 PUbI
9、iC StatiCvoidmai n( Stri ngargs)inta=newin t5;intarr1=newin t34;a0=10;a1=10+a0;a2=30;a3=40;a4=a1+a2;arr100=0;arr101=1;arr110=3;arr111=4;arr120=6;arr121=7;SyStem.out.pri ntl n( "a"+0+"SyStem.out.pri ntl n( "a"+1+"SyStem.out.pri ntl n( "a"+2+"SyStem.out.pri
10、 ntl n( "a"+3+"SyStem.out.pri ntl n( "a"+4+"SyStem.out.pri ntln ("arr1("+0+","+0+")SyStem.out.pri ntln ("arr1("+0+","+1+")SyStem.out.pri ntln ("arr1("+0+","+2+")"+a3);"+a4);="+arr1
11、00);="+arr101);="+arr102);="+arr110);="+arr111);="+arr112);SyStem.out.pri ntln ("arr1("+1+","+0+")SyStem.out.pri ntln ("arr1("+1+","+1+")SyStem.out.pri ntln ("arr1("+1+","+2+") 2編譯并運行程序,結果如圖2.4所示。運行a0
12、 = LOal = 20a2 = 3Da3 = 40a4 = 50arrl(00) = Oarrl(0j1) = 1arcl(0,2) = 2SEEl(IifO) = 3arEl(lyl) = 4artl(ly) = 5輪出丸成(耗時O秒-正常終止圖2.4(五) 使用表達式語句與復合語句1.建立包含表達式語句程序,源代碼如下。class LX2_5PUbliC StatiC Void main(String args) int k, i=3, j=4;k=20*84+i+j*i;SyStem.out.println(" 表達式(20*84+i+j*i) = "+k);2 建
13、立包含復合語句程序,源代碼如下。class LX2_6PUbIiC StatiC void main(String args) int k, i=3, j=4;k=i+j;SyStem.out.pri ntl n("float f;f=j+4.5F;i+;SyStem.out.pri ntl n("SyStem.out.pri ntl n(" SyStem.out.pri ntl n("在復合塊外的輸出k="+k);在復合塊內的輸出在復合塊內的輸出f="+f); k="+k);在復合塊外的輸出i="+i);3. 編
14、譯并運行上述兩個源程序,結果如圖2.5、2.6所示。延行表址式(04+L+J*i,) =55諭出充賤(耗時0杪)正常終止運行在復合塊夕卜的諭出 k=7在復臺塊內的輸出 £=0.5在復合塊內諭出 k-7在復倉塊外肋諭出 i=4輸出完眾(樣時0 )-正常終止圖2.6圖2.54. 將變量i在塊內定義會怎樣?改變其他變量的位置看看會發(fā)生什么變化。 思考:指出程序的復合結構以及變量的使用范圍。定義變量可能有三種情況:(1) 在函數(shù)的開頭定義;(2) 在函數(shù)內的復合語句內定義.;在函數(shù)的外部定義.;在一個函數(shù)內部定義的變量只在本函數(shù)范圍內有效,也就是說只有在本函數(shù)內才能引用它們,在此函數(shù)以外是不
15、能使用這些變量的在復合語句內定義的變量只在本復合語句范圍內有效,只有在本復合語句內才能引用它們在該復合語句以外是不能使用這些變量的以上這些成為"局部變量".程序的編譯單位是源程序文件,一個源文件可以包含一個或若干個函數(shù)在函數(shù)內定義的變量是局部變量,而在函數(shù)之外定義的變量稱為外部變量,外部變量是全局變量(也稱全程變量).全局變量可以為本文件中其他函數(shù)所共用它的有效范圍為從定義變量的位置開始到本源文件結束JaVa有兩種變量bai范圍:全局和局部du。如果在任何函數(shù)定義之外聲明了一Zhi個變量,則該變量為全局變量,且dao該變量的值在整個持續(xù)范圍內都可以訪問和修改。如果在函數(shù)定義
16、內聲明了一個變量,則該變量為局部變量。每次執(zhí)行該函數(shù)時都會創(chuàng)建和破壞該變量;且它不能被該函數(shù)外的任何事物訪問。(六) 使用選擇語句1 .使用if.else 語句(1) 程序功能:使用if.else語句構造多分支,判斷某一年是否為閏年。閏年的條件是符合下面二者之一:能被4整除,但不能被100整除;能被4整除,又能被100整除。(2) 編寫源程序文件,代碼如下。PUbIiC class LX2_7 PUbIiC StatiC void main(String args) boolea n leap;int year=2005;if (year%4=0 && year%100!=0)
17、 | (year%400=0) /方法 1SyStem.out.println(year+"年是閏年");elseSyStem.out.println(year+"年不是閏年");year=2008; / 方法 2if (year%4!=0) leap=false;else if (year%100!=0) leap=true;else if (year%400!=0) leap=false;else leap=true;if (leap=true)System.out.println(year+" 年是閏年 "); else Sys
18、tem.out.println(year+" 年不是閏年 ");if (leap=true) System.out.println(year+" 年是閏年 "); else System.out.println(year+" 年不是閏年 ");publicstatic void main(Stringargs)booleanleap;3)補充上面的程序代碼,編譯運行程序,列出運行結果public class LX2_7 int year=2005;if (year%4=0&& year%100!=0) |(year%4
19、00=0) /方法 1System.out.println(year+"else年是閏年 ");System.out.println(year+" year=2008; / 方法 2年不是閏年 ");if (year%4!=0) leap=false; else if (year%100!=0) leap=true; else if (year%400!=0) leap=false;else leap=true;if (leap=true)System.out.println(year+" 年是閏年 ");else System.ou
20、t.println(year+" 年不是閏年 "); year=2050; / 方法 3if (year%4=0) if (year%100=0) if (year%400=0) leap=true;else leap=false;else leap=false;else leap=false;if (leap=true) System.out.println(year+" 年是閏年 "); else System.out.println(year+" 年不是閏年 ");運行結果:H2D05 T.p2009 1B2D50 Tff輸出完
21、慮S抄)-正常典止思考:本程序中有幾個選擇語句,哪些具有嵌套關系? 本程序中有九個選擇語句,Lf Crar 4 J=O '.e¾p=fa>,¢1 汕 if c¾10Q. P: lpztje;Nfl if (yr 4D =C1 .產FJ""else "btzuu:Lf (Lff-=tTl*)ya=205D; I! iS 3if earM=O)(if t7earlOO=O);If (7eax4DO=O) lea5=tjelse Iear=f l:F?ISF Jep-fale;*else Iftali=f ilse;if l3
22、(p=tueJ System. t. 5J4Cyear+- 生是|王年Hl Se SyS-tern. out.(year+"年不雖閏年"1;J具有嵌套關系2.使用SWitCh 語句(1) 程序功能:在不同溫度時顯示不同的解釋說明。(2) 程序源代碼如下。class LX2_8PUbIiC StatiC Void main(String args) int c=38;SWitCh (c<10? 1:c<25? 2:c<35? 3:4) CaSe 1: SyStem.out.pri ntln(" "+c+"CaSe 2: SySt
23、em.out.pri ntln(" "+c+"CaSe 3: SyStem.out.pri ntln(" "+c+" default: SyStem.out.pri ntln(" "+c+"C有點冷。要多穿衣服。")C正合適。出去玩吧。");C有點熱。");C太熱了 !開空調。");(3)編譯運行程序,其結果如圖2.8所示。修改后程序:IfT -3比太熱了 !開郵齟就翩0秋)-琳紐圖2.8class LX2_8PUbIiC StatiC void main(Stri
24、ng args) int c=38;SWitCh (c<10? 1:c<25? 2:c<35? 3:4) CaSe 1: SyStem.out.pri ntl n(" "+c+"C有點冷。break;CaSe 2: SyStem.out.pri ntln(" "+c+"C正合適。break;CaSe 3: SyStem.out.pri ntln(" "+c+"C有點熱。break;default: SyStem.out.pri ntln(" "+c+"C太熱
25、了break;");!開空調。");出去玩吧。");要多穿衣服。");(七)1. for使用循環(huán)語句循環(huán)語句練習(1) 程序功能:按5度的增量打印出一個從攝氏溫度到華氏溫度的轉換表。(2) 程序源代碼如下。class LX2_9PUbliC StatiC Void main (String args) int h,c;SyStem.out.pri ntl n("for (c=0;c<=40;h=c*95+32;SyStem.out.pri ntl n("攝氏溫度c+=5)"+c+""+h);華氏溫度
26、 ");2.9所示。(3)補充上面的程序代碼,編譯并運行程序,其結果如圖一運行-一1氏溫度0325411050155920Ge257730S6359540104圖2.92. while循環(huán)語句練習(1) 程序功能:運行程序后從鍵盤輸入數(shù)字1/2/3后,可顯示抽獎得到的獎品;如果輸入其它數(shù)字或字符顯示“沒有獎品給你!”。(2)編譯源程序。import java.io.*;classLX2_10 PUbIiCStatiCvoidmain( Stri ngargs)throws IOEXCePti OnChar ch;SyStem.out.pri ntl n("按 1/2/3數(shù)字
27、鍵可得大獎!");SyStem.out.pri ntl n("按空格鍵后回車可退出循環(huán)操作.");while(Ch=(Char)SyStem.i n. read()!='')SyStem.i n. skip(2);/ 跳過回車鍵SWitCh(Ch) CaSe'1':SyStem.out.pri ntl n("break;恭喜你得大獎,一輛汽車!");CaSe '2':SyStem.out.pri ntln("不錯呀,你得到一臺筆記本電腦!");break;CaSe '3
28、':SyStem.out.pri ntl n("break;default:SyStem.out.pri ntl n("沒有白來,你得到一臺冰箱!");真不幸,你沒有獎品!下次再來吧。");(3)在命令提示符窗口運行程序,然后分別按1、2、3、r結果如圖2.10所示。圖 2.103. dowhile循環(huán)語句練習(1) 程序功能:求1+ 2+ +100之和,并將求和表達式與所求的和顯示出來。classLX2_11 PUbIiC StatiC voidmain( Stri ngargs) intn=1,sum=0;do sum+=n+; while(
29、n <=100);SyStem.out.pri ntln ("1+2+ .+100="+sum);(2)編譯并運行程序,結果如圖2.11所示。二運行二一1+2. ,.+100 =5050 (耗時0秒)-正常止圖 2.114多重循環(huán)練習(1)輸出九九乘法表的程序,PUbIiC class LX2_12 PUbIiC StatiC voidmain( Stri ngargs) int i,j, n=9;SyStem.out.pri nt("*|");for(i=1;i<=n ;i+)SyStem.out.pri nt(""+i
30、);SyStem.out.print("n1");for(i=1;i<=n ;i+)SyStem.out.print("-");SyStem.out.pri ntl n();for(i=1;i<=n ;i+)SyStem.out.pri nt(""+i+"|");for (j=1;j<=i;j+)SyStem.out.pri nt(""+i*j);SyStem.out.pri ntl n();(2)編譯并運行程序,結果如圖2.12所示。運行* I 1234567391I12I2
31、43I3694I412165I510152256I612182430367I7142133542498I6IS2432404356649Ig1.3茁3645546312 81圖 2.12四、練習題1 分析下面的程序,說出下面的程序為什么是死循環(huán)?class SUm PUbIiC StatiC void main(String args) int i=1,n=10,s=0;while (i<=n)S = S + i;SyStem.out.pri ntln ("s="+s); 答:因為i,n值不變,i恒小于n,所以while循環(huán)就會一直成立,因此死循環(huán)。2 分析下面源程序
32、的結構,寫出運行結果。class CirCIeArea final StatiC double Pl=3.14159;PUbIiC StatiC void main(String args) double M= 8.0, r2=5.0;SyStem.out.println("半徑為"+r1+"的圓面積="+area(r1);SyStem.out.println("半徑為"+r2+"的圓面積="+area();StatiC double area(double r) return (PI*r*r);源程序創(chuàng)建了一個自定義類 CirCIeArea ,該類包含了一個類成員變量 Pl
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 監(jiān)理工程師知識點梳理試題及答案
- 企業(yè)內實驗項目的策劃與執(zhí)行
- 2025至2030年中國三合一洗衣機行業(yè)投資前景及策略咨詢報告
- 2025至2030年中國萬圣節(jié)擺件行業(yè)投資前景及策略咨詢報告
- 2025至2030年中國PVC手工盒市場分析及競爭策略研究報告
- 2025至2030年中國D-色氨酸甲酯鹽酸鹽行業(yè)發(fā)展研究報告
- 2025至2030年中國BPU防水臺鞋跟市場現(xiàn)狀分析及前景預測報告
- 2025至2030年中國ABS旅行箱數(shù)據(jù)監(jiān)測研究報告
- 小學英語試卷改卷
- 2025至2030年三點式機柜鎖項目可行性研究報告
- T-CSCP 0019-2024 電網(wǎng)金屬設備防腐蝕運維診斷策略技術導則
- 2025中考道德與法治核心知識點+易錯易混改錯
- 授權獨家代理商合作協(xié)議2025年
- 《技術分析之均線》課件
- 小兒高熱驚厥護理查房
- 2025年度全款文化演出門票購買合同4篇
- 臨床基于高級健康評估的高血壓Ⅲ級合并腦梗死患者康復個案護理
- 2025年廈門建發(fā)股份有限公司招聘筆試參考題庫含答案解析
- 2025年中國EAM系統(tǒng)行業(yè)發(fā)展前景預測及投資戰(zhàn)略研究報告
- 精準醫(yī)療復合手術室
- 《基于三維熒光技術的水環(huán)境污染源深度溯源技術規(guī)范》
評論
0/150
提交評論