山東大學(xué)《高級語言程序設(shè)計》2020-2021學(xué)年期末試卷_第1頁
山東大學(xué)《高級語言程序設(shè)計》2020-2021學(xué)年期末試卷_第2頁
山東大學(xué)《高級語言程序設(shè)計》2020-2021學(xué)年期末試卷_第3頁
山東大學(xué)《高級語言程序設(shè)計》2020-2021學(xué)年期末試卷_第4頁
山東大學(xué)《高級語言程序設(shè)計》2020-2021學(xué)年期末試卷_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費閱讀

付費下載

下載本文檔

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

文檔簡介

學(xué)院班級學(xué)院班級山東大學(xué)高級語言程序設(shè)計課程試卷A號一二三四五六七八九十得分得分閱卷人一、不定項選擇題(40分,2*20)注意1)每道題目至多有2個正確選項,即是單選或者復(fù)選題。(2)請將正確答案填寫在如下的表格中,填寫在其它地方無效。123456789DBA/CA/DBCCADB20DACAB/DBAC/DCD1.程序執(zhí)行結(jié)束后,正確輸出結(jié)果應(yīng)為200,實際輸出結(jié)果為100,則程序錯誤的類型為A.語法錯誤B.編譯錯誤C.運行錯誤D.邏輯錯誤2.編譯Java源程序文件產(chǎn)生的字節(jié)碼文件的擴(kuò)展名為:3.選出合法的Java標(biāo)識符A._sys1_lllB.2mailC.Changed12D.class4.選出正確的表達(dá)式A.doublea=1.0;B.Doublea=newFloat(1.0);C.bytea=1340;D.Bytea=120;5.在以如下的命令行方式運行Java類Test中的main方法,怎樣才能在main(Stringargs[])方法中訪問單詞"first"?javaTestthefirstsnowthesecondsnow.A.args[0]B.args[1]C.args[2]D.args[3] 6.下列語句序列執(zhí)行后,x的值是:inta=3,b=4,x=5;if(++a==b)x=++a*x;A.5B.20C.25D.357.代碼片段如下,執(zhí)行后的輸出結(jié)果是什么?inti=11,j=5;switch(i/j){case3:j+=i;case2:j+=2;case4:j+=4;break;case1:j+=1;}System.out.pirntln(j);運行結(jié)果是:A.6B.7C.11D.228.在Java中,用Package語句說明一個包時,該包的層次結(jié)構(gòu)必須是:A.與文件目錄的層次相同B.與文件的結(jié)構(gòu)相同C.與文件類型相同D.與文件大小相同9.選出下列關(guān)于break、continue和return的說法中正確的選項。A.對于多重嵌套循環(huán),break跳出所有循環(huán)而到達(dá)最外層,順序執(zhí)行后面的程序。B.在循環(huán)語句中,continue語句和break語句作用相同。C.break語句只在循環(huán)語句中使用。D.在循環(huán)中執(zhí)行return語句,將跳出所有循環(huán)。10.下面是有關(guān)子類繼承父類構(gòu)造函數(shù)的描述,其中正確的是:A.創(chuàng)建子類的對象時,先運行完子類自身的構(gòu)造函數(shù),然后調(diào)用父類的構(gòu)造函數(shù)。B.子類通過使用super關(guān)鍵字,調(diào)用父類的構(gòu)造函數(shù)。C.子類無條件地繼承父類不含參數(shù)的構(gòu)造函數(shù)。D.子類無法繼承父類的構(gòu)造函數(shù)。11.比較s1和s2指向的兩個字符串的長度是否相等,如下表達(dá)式中正確的是:A.(s1.equals(s2))B.(s1.length().equals(s2))C.(s1.length().equals(s2.length())D.(s1.length()==s2.length())學(xué)院班級學(xué)院班級山東大學(xué)高級語言程序設(shè)計課程試卷A12.下面說法正確的是A.final可修飾類、屬性、方法。B.abstract可修飾類、屬性、方法。C.定義抽象方法需有方法的返回類型、名稱、參數(shù)列表和方法體。D.用final修飾的變量,在程序中可對這個變量的值進(jìn)行更改。13.選出下列關(guān)于繼承的敘述中正確的選項A.在java中允許多重繼承B.在java中一個類只能實現(xiàn)一個接口。C.Java的單一繼承使代碼更可靠。D.在java中一個類不能同時繼承一個類和實現(xiàn)一個接口。14.下列關(guān)于abstract關(guān)鍵字的說法,正確的是:A.如果將類中的一個方法聲明為abstract,那么這個類本身必須聲明為abstract。B.abstract類中只能有abstract方法,類所有方法定義必須是abstract的。C.abstract類中不能包含final修飾的方法。D.absract方法在其子類中必須被實現(xiàn)。15.執(zhí)行下列代碼后,選出正確的結(jié)果String[]s=newString[10];B.s[9]為null;16.下列說法正確的是A.?dāng)?shù)組屬于一種原生數(shù)據(jù)類型B.?dāng)?shù)組是一種對象C.可以如下定義數(shù)組:”int[][]number={31,23,33,43,35,63};”D.?dāng)?shù)組是鏈表(List)的一種特別實現(xiàn)17.下列代碼段執(zhí)行后的結(jié)果是什么?1publicstaticvoidmain(String[]args){2Objectobj=newint[]{1,2,3};3int[]array=(int[])obj;4for(inti=0;i<array.length;i++)5System.out.println(array[i]);}B.第2行編譯錯誤C.第3行編譯錯誤D.第4行編譯錯誤18.選出下列與方法publicvoidadd(inta){}為合理的重載方法。A.publicintadd(inta) B.publicvoidadd(longa)C.publicvoidadd(inta,intb)D.publicvoidadd(floata)19.選出下列關(guān)于異常的說法中正確的答案。A.程序中所有的可能出現(xiàn)的異常必須在catch中捕獲,否則將引起編譯錯誤。B.因為RuntimeException將由Java虛擬機做特別的處理,不允許編程序定義RuntimeException的子類。C.在方法定義中以throws標(biāo)識出可能出現(xiàn)的異常,即使在方法調(diào)用時異常沒有拋出。D.finally段中的語句,不允許再次出現(xiàn)異常。20.已知有下列類的說明,則插入下列哪些語句是正確的?publicclassTest{privatefloatf=1.0f;intm=12;staticintn=1;publicstaticvoidmain(Stringarg[]){Testt=newTest;}}A.t.f;B.this.n;C.Test.m;D.Test.n;得分閱卷人二、讀程序題,寫出下列各段程序的執(zhí)行結(jié)果(30分)1.publicclassTwoOne{publicstaticvoidmain(String[]args){intnumber=21;while(number>0){System.out.print(number++%3+"\t");number/=3;}學(xué)院班級學(xué)院班級山東大學(xué)高級語言程序設(shè)計課程試卷A2.publicclassTwoTwo{double[][]Matrix;publicstaticvoidmain(Stringargs[]){TwoTwomm=newTwoTwo();mm.mMatrix(a,b);mm.display();}publicvoidmMatrix(double[][]a,double[][]b){Matrix=newdouble[a.length][b[0].length];for(inti=0;i<a.length;i++){for(intj=0;j<b[0].length;j++){for(intk=0;k<a[0].length;k++){Matrix[i][j]=Matrix[i][j]+a[i][k]*b[k][j];}}}}publicvoiddisplay(){for(inti=0;i<Matrix.length;i++){for(intj=0;j<Matrix[0].length;j++){System.out.print(Matrix[i][j]+"");}System.out.println("");}}} 3.classMyExpextendsException{MyExp(){super("f0");}}publicclassTwoThree{publicvoidf1(intn){System.out.println("f1-1");f2(n);System.out.println("f1-2");}publicvoidf2(intn){System.out.println("f2-1");try{System.out.println("f2-2");f3(n);System.out.println("f2-3");}catch(MyExpe){System.out.println(e.getMessage());}finally{System.out.println("f2-4");}System.out.println("f2-5");}publicvoidf3(intn)throwsMyExp{System.out.println("f3-1");if(n<0){thrownewMyExp();}System.out.println(n);System.out.println("f3-2");}publicstaticvoidmain(String[]args){TwoThreeexp=newTwoThree();exp.f1(-4);}}學(xué)院班級學(xué)院班級山東大學(xué)高級語言程序設(shè)計課程試卷A4.publicclassTwoFour{publicstaticvoidpermute(Stringstr){char[]strArray=str.toCharArray();permute(strArray,0,strArray.length-1);}publicstaticvoidpermute(char[]list,intlow,inthigh){inti;if(low==high){Stringcout="";for(i=0;i<=high;i++)cout+=list[i];System.out.println(cout);for(i=low;i<=high;i++){chartemp=list[low];list[low]=list[i];list[i]=temp;permute(list,low+1,high);temp=list[low];list[low]=list[i];list[i]=temp;}}}publicstaticvoidmain(String[]args){permute("123");}} 得分閱卷人三、寫程序題,在指定位置書寫相應(yīng)的程序代碼(30分)1.編寫一個方法voidDivideBySeven(intstart,intend),輸入兩個非負(fù)整數(shù)start和end(end大于start打印出兩個整數(shù)之間所有可以被7整除的整數(shù)(5分)voidDivideBySeven(intstart,intend){}學(xué)院班級學(xué)院班級 山東大學(xué)高級語言程序設(shè)計課程試卷A2.(1)補充完成下面的類,給出屬性description存取(get和set)方法(2分)publicabstractclassShape{privateStringdescription;Shape(Stringdesc){descrption=desc;}//在此處書寫代碼publicabstractdoublearea();}(2)補充完整類Rectangle及類Circle,可以利用area方法計算面積(6分)classRectangleextendsShape{privatedoublewidth,height;//在此處書寫代碼}classCircleextendsShape{privatedoubleradius//在此處書寫代碼}(3)完成下面的方法,可以將數(shù)組s中的所有形狀(包括Rectangle及Circle)按照面積大小升序排列(4分)staticvoidsort(Shape[]s){}3.有下面鏈表節(jié)點類ListNode的定義,完成下面線性鏈表類String

溫馨提示

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

最新文檔

評論

0/150

提交評論