上海計(jì)算機(jī)等級考試二級Java-程序調(diào)試和程序填空_第1頁
上海計(jì)算機(jī)等級考試二級Java-程序調(diào)試和程序填空_第2頁
上海計(jì)算機(jī)等級考試二級Java-程序調(diào)試和程序填空_第3頁
上海計(jì)算機(jī)等級考試二級Java-程序調(diào)試和程序填空_第4頁
上海計(jì)算機(jī)等級考試二級Java-程序調(diào)試和程序填空_第5頁
已閱讀5頁,還剩25頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

WORD格式整理版編程題按指定的要求編寫程序段1編寫一個(gè)程序,把六個(gè)按鈕分別表記為‘A至‘F',并排列成一行。參照程序:importjava.awt.*;publicclassMyClass{publicstaticvoidmain(Stringargs[]){String[]labels={"A","B","C","D","E","F"};Windowwin=newFrame( );win.setLayout(newGridLayout(1,6));for(inti=0;i<labels」ength;i++)win.add(newButton(labels[i]));win.pack( );win.setVisible(true);}}【解析】該題目的知識點(diǎn)在于圖形用戶界面設(shè)計(jì)中的布局設(shè)計(jì),只能采用GridLayout的方式,不能采用默認(rèn)的FlowLayout布局方式2.設(shè)計(jì)一個(gè)applet,加載和顯示圖象“student.gif”。圖像文件與包含applet的HTM文件在同一個(gè)目錄下。參照程序:importjava.awt.*;importjava.applet.*;publicclassMypictureextendsjava.applet.Applet{Imageimage;publicvoidinit( ){image=getlmage(getDocumentBase( ),"Student.gif");}publicvoidpaint(Graphicsg){g.drawlmage(image,O,O,this);}}學(xué)習(xí)指導(dǎo)參照WORD格式整理版【解析】該題要求掌握怎樣在applet中顯示圖像文件的編程能力,詳細(xì)可參照參照教材第十早。3.編寫removeRandChar( )方法,該方法有兩個(gè)參數(shù),種類分別是String和int,第二個(gè)參數(shù)表示從第一個(gè)參數(shù)指定的字符串中刪除字符的個(gè)數(shù)。刪除哪個(gè)字符由隨機(jī)數(shù)決定。如果第二個(gè)參數(shù)比第一個(gè)參數(shù)指定的字符串長度大,則該方法返回空字符串。removeRandChar( )方法必須包括調(diào)用removesingChar( )方法,該方法定義在test4_1應(yīng)用程序中。比如履行完整的test4_1應(yīng)用程序兩次后,產(chǎn)生如下的輸出:C:\>javatest4_1Remove3randomcharactersfromINTERESTING:INEETINGRemove6randomcharactersfromINTERESTING:EESTNC:\>javatest4_1Remove3randomcharactersfromINTERESTING:ITERETINRemove6randomcharactersfromINTERESTING:IEESG下面是不包括removeRandChar( )方法的test4_1應(yīng)用程序:publicclasstest4_1{publicstaticvoidmain(String[]args){Stringword1=removeRandChar("INTERESTING",3);System.out.println("Remove3randomcharactersfromINTERESTING:"+word1);word1=removeRandChar("INTERESTING",6);System.out.println("Remove6randomcharactersfromINTERESTING:"+word1);}Thismethodremovesthecharacteratposition:indexNum,fromtheString:str,andreturnstheresultingString.*/privatestaticStringremoveSingChar(Stringstr,intindexNum){returnstr.substring(O,indexNum)+str.substring(indexNum+1);}}參照程序:頁:2學(xué)習(xí)指導(dǎo)參照WORD格式整理版privatestaticStringremoveRandChar(Stringstr,inthowMany){if(str.length( )<=howMany)return"";intrandNo;for(intj=0;jvhowMany;j++){randNo=(int)(Math.random( )*str.length( ));str=removeSingChar(str,randNo);}returnstr;}要注意形參的使用,以及有返回值和沒【解析】該題要求掌握編寫方法和調(diào)用方法的能力,有返回值的不同編寫形式。學(xué)習(xí)指導(dǎo)參照WORD格式整理版4?認(rèn)真閱讀下面student類的定義,該類的定義能夠寄存學(xué)生的姓名(name、測驗(yàn)分?jǐn)?shù)(testMark)和考試分?jǐn)?shù)(examMark。publicclassStudent{privateStringname;privateinttestMark;privateintexamMark;publicStudent(StringtheName){name=theName;}publicStudent(StringtheName,inttest,intexam){name=theName;testMark=test;examMark=exam;}publicvoidsetExamMark(intexam){examMark=exam;System.out.println(name+"\'sexammarkchangedto"+examMark);}publicintgetTestMark( ){returntestMark;}publicvoiddisplaylnfo( ){System.out.println(name+"got"+testMark+"inthetestand"+examMark+"intheexam");}publicvoidcompareTo(Studentother){if(examMark>other.examMark)System.out.println(name+"didbetterthan"+);elseSystem.out.println(name+"didworsethan"+);}}要求達(dá)成test4_3的編程,它將創(chuàng)立兩個(gè)Student對象并調(diào)用相應(yīng)的方法,產(chǎn)生的輸出如下所示:C:\>javatest4_3張楠got70inthetestand85intheexam李浩got80inthetestand90intheexam李浩'sexammarkchangedto40李浩didworsethan張楠注意不能使用任何System.out.print( )或System.out.println( )語句,產(chǎn)生的輸出只要簡單地調(diào)用所創(chuàng)建的Student對象的對應(yīng)方法。學(xué)習(xí)指導(dǎo)參照WORD格式整理版publicclasstest4_3{publicstaticvoidmain(String[]args){Studentstudent1;Studentstudent2;}}參照程序:頁:5student1=newStudent(”張楠",70,85);student2=newStudent("李浩",80,90);student1.displaylnfo( );student2.displaylnfo( );student2.setExamMark(40);pareTo(student1);【解析】該題查核的重點(diǎn)是面向?qū)ο蟪绦蛟O(shè)計(jì)的基本應(yīng)用:求調(diào)用實(shí)對象的例方法。5.編寫change( )方法,該方法有一個(gè)參數(shù),種類為int,經(jīng)過方法,計(jì)算并輸出由給定參數(shù)(元)的人民幣兌換成一元、兩元、五元的所有方案。比如當(dāng)用戶輸入10,履行Test4_1應(yīng)用程序后,產(chǎn)生如下的輸出:importjava.io.*;publicclassTest4_1{publicstaticvoidmain(Stringargs[])throwsIOException{intmoney;Stringstr;BufferedReaderbuf;buf=newBufferedReader(newInputStreamReader(System.in));System.out.print("lnputaninteger:");str=buf.readLine( );money=lnteger.parseInt(str);學(xué)習(xí)指導(dǎo)參照WORD格式整理版if(money>=5&&money<=100)change(money);}publicstaticvoidchange(intnum){}}參照程序:intr1,r2,r5;for(r5=0;r5<=num/5;r5++)for(r2=0;r2<=num/2;r2++){r1=num-r5*5-r2*2;if(r1>=0)System.out.println("5:"+r5+""+"2:"+r2+""+"1:"+r1);【解析】這是一個(gè)查核循環(huán)邏輯的編程題。6.編寫一個(gè)以字符串?dāng)?shù)組為參數(shù)的uniqueStrings( )方法。該方法將打印數(shù)組中所有的字符串。若數(shù)組中有相同的字符串,則相同的字符串只打印一次。比如:履行下列語句String[]words={"one","two","two","three","three","three","one"};uniqueStrings(words);將輸出如下:onetwothree參照程序:privatestaticvoiduniqueStrings(String[]words){for(inti=0;i<words」ength;i++){booleanunique=true;for(intj=0;j<i;j++){if(words[i].equals(words[j]))unique=false;}if(unique)System.out.println(words[i]);}}學(xué)習(xí)指導(dǎo)參照WORD格式整理版【解析】注意形參是數(shù)組的編程,以及字符串的比較要使用equals方法7.現(xiàn)有一段30米長的木材,每日鋸去其中的一半,編程序計(jì)算并輸出多少天后,木材的長度開始小于0.05米。參照程序:publicclassTest4_1{publicstaticvoidmain(Stringargs[]){intd=0;floatm=30;while(m>=0.05){m=m/2;d++;System.out.print(d+":");//可選System.out.println(m);//可選}System.out.print("Youneed"+d+"days");}}【解析】該題的循環(huán)只能使用while和dowhile語句達(dá)成下面的程序:編寫帶兩個(gè)參數(shù),返回值為字符串的方法randomLetters(Stringword,inthowMany)

。該方法實(shí)現(xiàn)從字符串中隨機(jī)獲取所需數(shù)量的字符,并按獲取的序次以大寫字符串返回。第一個(gè)參數(shù)代表給定的字符串,第二個(gè)參數(shù)確定字符個(gè)數(shù)。(假設(shè)調(diào)用方法時(shí)字符串參數(shù)不為空,整型參數(shù)不為負(fù))履行完整的程序后:publicclassTest4_2{publicstaticvoidmain(String[]args){System.out.println(randomLetters("LOVELY",3));System.out.println(randomLetters("LOVELY",3));System.out.println(randomLetters("LOVELY",4));System.out.println(randomLetters("zhang",1));System.out.println(randomLetters("zhang",2));}privatestaticStringrandomLetters(Stringword,inthowMany){學(xué)習(xí)指導(dǎo)參照WORD格式整理版其中一種輸出如下:LYOVLOOOLEZGH參照程序:privatestaticStringrandomLetters(Stringword,inthowMany){StringoutWord="";charc;intrandom;word=word.toUpperCase( );for(inti=0;i<howMany;i++){random=(int)(Math.random( )*word」ength( ));c=word.charAt(random);outWord=outWord+c;}returnoutWord;}9.達(dá)成下面的程序:編寫一個(gè)參數(shù)為二維整數(shù)數(shù)組、返回值為整數(shù)的方法countOdds。該方法計(jì)算二維數(shù)組中奇數(shù)的個(gè)數(shù)并返回。下面的例子是一個(gè)數(shù)組的定義并調(diào)用該方法及輸出對應(yīng)的結(jié)果。inttwoArray[][]={{5,7,8,22,47},{42,75,58,21,36}};System.out.println("Odds:"+countOdds(twoArray));以上程序的結(jié)果是:Odds:5參照程序:privatestaticintcountOdds(int[][]theInts){intnumOdds=0;for(inti=0;i<theInts.length;i++){for(intj=0;j<thelnts[i].length;j++){if(thelnts[i][j]%2!=0)numOdds++;}}returnnumOdds;}學(xué)習(xí)指導(dǎo)參照WORD格式整理版【解析】要注意兩維數(shù)組中不同維調(diào)用length的差別10.在下列圖所示的小應(yīng)用程序用戶界面上有兩個(gè)標(biāo)簽(Label)、一個(gè)學(xué)習(xí)指導(dǎo)參照WORD格式整理版列表框(Choice)和一個(gè)文本地區(qū)(TextArea)。程序?qū)崿F(xiàn)以下功能:一旦用戶在列表框中(單擊鼠標(biāo))選擇了某書名選項(xiàng),該書名將被立即顯示在文本地區(qū)中。請達(dá)成該程序的init()方法以實(shí)現(xiàn)程序的功importjava.awt.*;importjava.awt.event.*;importjava.applet.*;publicclassMyChoiceextendsApplet{String[]bookstore={"Java程序設(shè)計(jì)",”C++程序設(shè)計(jì)","網(wǎng)絡(luò)基礎(chǔ)","計(jì)算機(jī)應(yīng)用基礎(chǔ)",”VisualBasic程序設(shè)計(jì)","動(dòng)畫設(shè)計(jì)基礎(chǔ)"};Labella仁newLabel("請選擇你要的書籍:");LabelIa2=newLabel("你的選擇是:");TextAreat=newTextArea(5,30);Choicec=newChoice( );publicvoidinit( ){//所需要編寫的程序塊classCLimplementsItemListener{publicvoiditemStateChanged(ltemEvente){t.append(c.getSelectedltem( )+"\n");}}}(該語句任參照程序:t.setEditable(false);學(xué)習(xí)指導(dǎo)參照WORD格式整理版for(inti=0;i<6;i++)c.addltem(bookstore[i]);add(la1);add(c);add(la2);add(t);c.addltemListener(newCL( ));【解析】該題的重點(diǎn)是認(rèn)清applet中的init方法的基本作用:對有關(guān)內(nèi)容進(jìn)行初始化。該題是對組件進(jìn)行初始化:增添組件,設(shè)置偵聽能力從“素材庫”中取出StringStrip.java文件,在該文件基礎(chǔ)上進(jìn)行補(bǔ)充,達(dá)成其中方法staticStringstrip(Strings,charc)的編寫。該方法的功能是:將指定的字母從給定的字符串中所有出現(xiàn)的地方移去,其中參數(shù)s是給定的字符串,參數(shù)c是指定的字母。要求用循環(huán)語句實(shí)現(xiàn)。下圖中給出了一個(gè)從給定字符串“ABCADaAADFaRAG中移去‘A字符后為“BCDaDFaRG的演示結(jié)果)。程序達(dá)成后將程序編寫及運(yùn)行所需要的所有文件(包括源程序言件、字節(jié)碼文件)寄存到C:\KS目錄下。參照程序:staticStringstrip(Strings,charc){intn=s.length( );Stringa="";inti=0;while(i<n){charsc=s.charAt(i);if(sc==c)i++;else{a=a+sc;i++;};}returna;}【解析】從2008年開始Java等級考試采用了上機(jī)形式。因此參加考試的同學(xué)需要從指定的文件夾中取出指學(xué)習(xí)指導(dǎo)參照WORD格式整理版定的文件進(jìn)行編程。希望同學(xué)翻開文件后馬上寄存到另一個(gè)指定文件夾如此題要求的C:\KS文件夾中,免得你的改正影響到原始的文件,有利于你需要時(shí)還能夠取用最原始的文件。原始文件中已寄存了一些文件編程所需要的非查核重點(diǎn)的程序段,內(nèi)容有多,有少,便于程序調(diào)試。從“素材庫”中取出Division.java文件,在該文件基礎(chǔ)上進(jìn)行補(bǔ)充,達(dá)成簡單除法計(jì)算器(只做整數(shù)除法,結(jié)果也取整數(shù))的小應(yīng)用程序編寫。運(yùn)行結(jié)果見圖1,顯示結(jié)果的文本域設(shè)置為不可編寫。當(dāng)除數(shù)為0時(shí),能拋出ArithmeticException異樣,并在捕獲異樣處對異樣進(jìn)行辦理,異樣辦理要求在屏幕上顯示“除數(shù)不能為0,請從頭輸入”,結(jié)果見圖2。程序達(dá)成后將程序編寫及運(yùn)行所需要的所有文件(包括源程序言件、字節(jié)碼文件及html文件)寄存到C:\KS目錄下。圖1圖2參照程序:importjava.applet.*;importjava.awt.*;importjava.awt.event.*;publicclassDivisionextendsAppletimplementsActionListener{Labell1,l2,E;TextFieldinput1,input2,output1;inta,b,c;Panelp=newPanel( );publicvoidinit( ){setLayout(newBorderLayout( ));input1=newTextField(5);學(xué)習(xí)指導(dǎo)參照WORD格式整理版I1=newLabel("十");input2=newTextField(5);l2=newLabel("=");output1=newTextField(9);E=newLabel( );E.setAlignment(Label.CENTER);E.setForeground(Color.red);p.add(input1);p.add(l1);p.add(input2);p.add(l2);p.add(output";add("North",p);add("Center",E);input2.addActionListener(this);output1.setEditable(false);}publicvoidactionPerformed(ActionEvente){a=lnteger.parseInt(input1.getText( ));b=lnteger.parseInt(input2.getText( ));E.setText(””);try{c=a/b;output1.setText(Integer.toString(c));}catch(ArithmeticExceptione1){StringTx="除數(shù)不能為0,請從頭輸入";E.setText(Tx);output1.setText("");}}}學(xué)習(xí)指導(dǎo)參照WORD格式整理版【解析】以上參照程序中非加粗的內(nèi)容就是原始文件所提供的。該題的知識點(diǎn)有兩部分:組件的設(shè)置,即界面的設(shè)計(jì),以及事件的編程13.從素材庫"中取出Test5.java文件,在該文件基礎(chǔ)上進(jìn)行補(bǔ)充,達(dá)成所需內(nèi)容的編寫。該applet程序中,窗口區(qū)有一個(gè)"變色"按鈕,程序初始狀態(tài)見下列圖1,在中心地點(diǎn)有一個(gè)半徑為30的藍(lán)色圓。(14分)當(dāng)單擊窗口的隨意地點(diǎn),在鼠標(biāo)地點(diǎn)將顯示一個(gè)圓,其顏色和大小隨機(jī)而變,但半徑不能超過150,見下列圖2;(10分)當(dāng)單擊”變色”按鈕則圓的顏色也會(huì)隨機(jī)變化。顏色有Color.red、Color.blue、Color.yellow。(10分)以下列圖示是用Java開發(fā)包直接運(yùn)行的顯示效果,僅作參照。可根據(jù)需要在素材庫"中選用Test5.html文件。程序達(dá)成后將程序編寫及運(yùn)行所需要的所有文件(包括源

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論