JAVA程序設(shè)計語言基礎(chǔ)習(xí)題及答案.doc
《JAVA程序設(shè)計語言基礎(chǔ)習(xí)題及答案.doc》由會員分享,可在線閱讀,更多相關(guān)《JAVA程序設(shè)計語言基礎(chǔ)習(xí)題及答案.doc(7頁珍藏版)》請在裝配圖網(wǎng)上搜索。
JAVA程序設(shè)計語言基礎(chǔ)習(xí)題 (1)在Java中,負責(zé)對字節(jié)代碼解釋執(zhí)行的是(B?。?。 A.垃圾回收器 B.虛擬機 C.編譯器 D.多線程機制 //編譯器將JAVa源程序編譯成字節(jié)代碼,即虛擬機代碼,然后由虛擬機將虛擬機代碼換成相應(yīng)硬件的機器代碼,之后加以執(zhí)行。 (2)Java語言中,負責(zé)并發(fā)管理的機制是( D) A.垃圾回收 B.虛擬機 C.代碼安全 D.多線程 //多線程即是多任務(wù)的特殊形式,多個任務(wù)并發(fā)執(zhí)行。 (3)下列敘述中,正確的是 (C ) A.源文件擴展名為.jar B.源文件名與public類名可以不相同 C.Java語言的標識符是區(qū)分大小寫的 D.源文件中public類的數(shù)目不限 //A項擴展名應(yīng)為.java;B項應(yīng)為相同;D項public類只能有一個。 (4)Java為移動設(shè)備提供的平臺是( A ) A.J2ME B.J2SE C.J2EE D.J2RE //J2ME是致力于消費產(chǎn)品與嵌入式設(shè)備之間的最佳解決方案,特別是在移動通信設(shè)備,移動計算設(shè)備上應(yīng)用廣泛;J2SE是用于編寫桌面/工作站應(yīng)用軟件;J2EE是前沿的JAVA技術(shù)平臺,為服務(wù)器的計算提供了所有范圍的企業(yè)級功能。J2RE是JAVA的運行環(huán)境。 (5)JDK中提供的文檔生成器是( C ) A.java.exe B. javap.exe C. javadoc.exe D. jdb.exe //A中的java.exe是java語言解釋器;B中的javap.exe是java類文件反匯編器,用于分析類中的所有成員方法和成員變量,當(dāng)然也包括構(gòu)造方法;C中的javadoc.exe是Java API文檔生成器;D中的jdb.exe是javadebug的縮寫,既JAVA調(diào)試器。 (6)在Java語言中,不允許使用指針體現(xiàn)出的Java特性是( D ) A.可移植 B.解釋執(zhí)行 C.健壯性 D.安全性 //java不支持指針數(shù)據(jù)類型,它提供了字節(jié)碼的檢查機制還提供了自動的“內(nèi)存垃圾”手機功能,提高了JaVA的穩(wěn)定性和安全性。 (7)下列描述中,錯誤的是(A ) A.Java要求編程者管理內(nèi)存 B.Java的安全性體現(xiàn)在多個層次上 C.Applet要求在支持Java的瀏覽器上運行 D.Java有多線程機制Java不需要編程者管理內(nèi)存,提供了自動的“內(nèi)存垃圾”的收集功能 // Java不需要編程者管理內(nèi)存,提供了自動的“內(nèi)存垃圾”的收集功能 (8)Java編譯器將源代碼翻譯成獨立于平臺的格式是(B ) A.opcodes B.bytecodes C.virtual machines D.applet // Java編譯器將源代碼翻譯成獨立于平臺的格式是字節(jié)碼即bytecodes (9)Java可以用來創(chuàng)建程序的工具集是( D ) A.JRE B.JNI C.JVM D.JDK //A中的JRE是JAVA運行環(huán)境。B中JNI是JAVA本地接口。C中的JVM是JAVA虛擬機。D中的JDK是JAVA的工具集。 (10)Java語言與其他主要語言相比較,獨有的特點是( C ) A.面向?qū)ο? B.多線程 C.平臺無關(guān)性 D.可擴展性 //用JAVA語言編寫的各種程序可以不經(jīng)過修改在各個平臺系統(tǒng)上運行。 (11)下列屬于合法的Java標識符是( A ) A._cat B.5books C. +static D.-3.14159 //標識符是以字母、下劃線或$符號開頭的字母、下劃線以及數(shù)字序列。 (12)按照Java的標識符命名規(guī)范,下列表示一個類的標識符正確的是( B ) A.Helloworld B.HelloWorld C.helloworld D.helloWorld //用Java標識符來表示類名時,如果多于一個單詞,則每個單詞的第一個字母需要大寫。定義變量名時,若一個變量名是有一個以上單詞所組成的,則第一個單詞之后的所有單詞都以大寫字母開頭。 (13)在Java中,表示“回車”的轉(zhuǎn)義字符是( B ) A.\n B.\r C.\b D.\t //A中的\n是回車并且換行的意思。B中的\r是回車的意思(即回到本行的開頭)。C中的\b是向前退格的意思。D中的\t是橫向跳格的意思。 (14)char類型的取值范圍是( B ) A. 2-7 ~27 -1 B. 0~216-1 C. -215 ~215 -1 D. 0~28-1 //JAVA中字符型是用16位的Unicode碼來表示的。 (15)十進制數(shù)16的16進制表示格式是( A ) A.0x10 B.0x16 C.0xA D.16 //十進制數(shù)16表示的二進制數(shù)為00010000,然后再將其化為十六進制的0X10 (16)下列的( A )賦值語句是不正確的 A.float f = 2E1.2; B.double d = 5.3E-12; C.float d = 3.14f ; D.double f=0.3E0; //表示float型數(shù)時在后面加f或F,浮點型數(shù)據(jù)采用科學(xué)計數(shù)法表示時尾數(shù)必須有,小數(shù)部分可有可無;階碼必須有,且必須是整數(shù)。 (17)下列的( D )賦值語句是正確的 A.char a=12; B.int a=12.0; C.int a=12.0f; D.int a=(int)12.0; //浮點型轉(zhuǎn)化為整型數(shù)據(jù),必須用強制類型轉(zhuǎn)換。 (18)"++"運算符的操作數(shù)個數(shù)是( A ) A. 1個 B. 2個 C. 3個 D. 4個 //++為單目運算符,操作數(shù)個數(shù)為1。 (19)在switch(expression)語句中,expression的數(shù)據(jù)類型不能是( A ) A. double B. char C. byte D. short //表達式必須是符合byte,char,short和int類型的表達式,而不能使用浮點類型或long類型,也不能是一個字符串。 (20)閱讀下列代碼 public class Test{ public static void main(String args[]){ System.out.println(~(0xa5) & 0xaa); } } 其運行結(jié)果是 ( B ) A.0xa5 B.10 C.0x50 D.0xaa //~(0XA5)為0X5A,然后與0XAA相與得0X0A,因為計算機輸出的結(jié)果為十進制,所以結(jié)果為10。 (21)閱讀下列代碼 public class Test{ public static void main(String args[]){ System.out.println(9 >>>2); } } 其運行結(jié)果是( B ) A. 4 B. 2 C. 3 D. 1 //9的二進制形式為00001001,無符號右移2位的0010,十進制為2 (22)閱讀下列代碼段 int x=3; while(x<9) x+=2; x++; while語句成功執(zhí)行的次數(shù)是( D ) 。 A.1次 B.2次 C.0次 D.3次 //如果在while(x<9)后加入大括號,括住x+=2;再加入輸出語句System.out.println(“x=”+x);則會輸出x=5 x=7 x=9,成功執(zhí)行while語句3次。但是如果將x++;也括到大括號中,則輸出x=5 x=8,成功執(zhí)行while語句2次。 (23) 閱讀下面程序: import java.*; public class TypeTransition { public static void main(String args[]) { char a=h; int i=100,j=97; int aa=a+i; System.out.println("aa="+aa); char bb=(char)j; System.out.println("bb="+bb); } } 如果輸出結(jié)果的第二行為bb=a,那么第一行的輸出是( C ) A. aa=1 B. aa=v C. aa=204 D. aa=156 //字符h的Unicode值為104,所以a轉(zhuǎn)化為整型數(shù)據(jù)時為104,故aa為204 (24)給出下列的代碼,哪行在編譯時可能會有錯誤? ① public void modify( C ){ ② int i, j, k; ③ i = 100; ④ while ( i > 0 ){ ⑤ j = i * 2; ⑥ System.out.println (" The value of j is " + j ); ⑦ k = k + 1; ⑧ } ⑨ } A.line 4 B.line 6 C.line 7 D.line 8 //⑦ k = k + 1; 中的k沒有初始化,所以出錯。 (25)下列程序中,要求按照從小到大的順序輸出1到100之間所有能被7整除的數(shù)字,請將下列程序補充完整。 注意:請勿改動main()主方法和其他已有語句內(nèi)容,僅在橫線處填入適當(dāng)語句。 public class Example1 { public static void main(String args[]) { int i=1; 【do】 { if( 【i%7==0】 ) System.out.print(i+","); 【i++】 }while(i<100); System.out.println(); } } (26)下面的程序中,隨機產(chǎn)生100個學(xué)生的成績,并計算他們的平均成績。學(xué)生的成績按照5級打分制,A表示4分、B表示3分、C表示2分、D表示1分、E表示0分,平均成績用浮點數(shù)表示。請?zhí)顚憴M線處的內(nèi)容。 import java.math.*; public class AverageScore { public static void main(String args[]) { float aver=0; int a=0,b=0,c=0,d=0,e=0; for( 【int i=0】 ;i<100;i++) { double sd=Math.random()*5+A; char score= 【(char)sd】 ; 【switch】 (score) { case A: aver+=4;a++;break; case B: aver+=3;b++;break; case C: aver+=2;c++;break; case D: aver+=1;d++;break; case E: aver+=0;e++;break; default : break; } } aver/=100; System.out.println("平均分數(shù)為"+aver+",學(xué)生人數(shù)100"); System.out.println("得A分的學(xué)生有"+a+"人"); System.out.println("得B分的學(xué)生有"+b+"人"); System.out.println("得C分的學(xué)生有"+c+"人"); System.out.println("得D分的學(xué)生有"+d+"人"); System.out.println("得E分的學(xué)生有"+e+"人"); } } (27)下面程序中的continue的作用是什么?有、沒有標號,運行結(jié)果相同嗎? public class SignContinue { public static void main(String args[]) { label: for(int i=0; i<3; i++) { for(int j=1;j<3; j++) { if(j!=i) continue label ; System.out.println(i+j); } } } } //continue的作用是跳過label所指語句塊中所有余下部分的語句,回到label語句塊的條件測試部分繼續(xù)執(zhí)行。 有標號的運行結(jié)果為2;無標號的運行結(jié)果是2 4。 第三章課后的8題,很簡單,略。 第三章課后的9題,需要分別取出百位數(shù),十位數(shù)與個位數(shù)。 可以使用下面語句實現(xiàn);設(shè)i為一個三位數(shù),a為百位數(shù),b為十位數(shù),c為個位數(shù)。則有a=i/100 ; b=j/10%10; c=i%10; 第三章課后的9題,設(shè)置三層循環(huán),外層i控制輸出5行,中層j控制每行開頭的空格,內(nèi)層k控制*號的輸出。 程序如下: /*打印圖案:每行打印5個星號,每個星號之間空兩個空格*/ public class xinghao { public static void main(String args[]) { int i, j, k; for (i=1;i<=5;i++) { for (j=0;j<=3*(i-1);j++) System.out.print(" "); for (k=1;k<=5;k++) System.out.print("* "); System.out.println(); } } } 或者: public class PrintStar { public static void main(String[] args) { for(int i=0; i<5; i++) { String num = " "; for(int k=0; k- 1.請仔細閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點此認領(lǐng)!既往收益都歸您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計者僅對作品中獨創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- JAVA 程序設(shè)計語言 基礎(chǔ) 習(xí)題 答案
鏈接地址:http://www.820124.com/p-8207034.html