程序設計試題及答案_第1頁
程序設計試題及答案_第2頁
程序設計試題及答案_第3頁
程序設計試題及答案_第4頁
程序設計試題及答案_第5頁
已閱讀5頁,還剩8頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、JAVA程序設計試卷(A卷)得分閱卷人一、選擇題(每小題 2分,共 40 分。)1JDK提供的編譯器是( )。(A)java.exe (B)javac.exe(C)javap.exe (D)javaw.exe2.以下作為Java程序入口的main 方法聲明正確的( )。(A)public void main(String args) (B)public int main(String args)(C)public static void main(String args) (D)public static int main(String args)3.以下標識符錯誤的是( )。(A)Publi

2、c(B)張三(C)class (D)main4.java中定義字符串String s=”pzhu”,下面操作可以取得字符串長度的是( )。(A)s.length() (B)s.length (C)s.size() (D)length(s)5.如下定義數組,操作正確的是( )。int a=1,2,3;(A)a3=100 (B)a0.length (C)a+ (D)a.length6.如下定義二維數組操作錯誤的是( )。int a=1,2,3;(A)a01=200 (B)a0.length (C)a11=100 (D)a.length7. 以下數據類型存儲空間最大的是( )。(A)byte(B)l

3、ong(C)float (D)char8. 面向對象的三大特性,不包括如下 ( )。(A)異常(B)封裝(C)繼承(D)多態9、關于類的定義以下說法錯誤()。(A)類定義使用class關鍵字 (B)每個類中必須有一個main方法(C)一個包可以包含多個類 (D)java中所有類都是Object類的子類10. 關于構造方法以下說法錯誤的是 ( )。()構造方法名必須與類名一致 ()構造方法可以重載()構造方法是通過new來調用 ()每個類都必須編寫構造方法代碼11.關于繼承如下說法錯誤的是( )。()Java是單繼承的 ()通過extends來定義繼承()所有父類方法都可以被override的

4、()繼承呈現的是is a的關系12. 以下代碼執行的結果是( )。System.out.println("攀枝花學院pzhu".length();()編譯錯誤()運行錯誤()9()1413. 用來存儲鍵值對的容器是( )。(A)ArrayList(B)LinkedList(C)HashSet (D) HashMap14、java中用來拋出異常的關鍵字是( )。()try ()catch ()throw()throws15.關于finally塊中的代碼,以下說法不正確的是( )。(A)try塊中的return語句會中斷finally塊中語句的執行(B)無論finally塊前的

5、語句運行是否產生異常,其中的語句都會執行(C)finally塊中的語句通常中用作資源的清理()try塊中的System.exit(1)語句會中斷finally塊中語句的執行16.關于Java字符串說法錯誤的是( )。()Java中的字符串是常量 ()Java中的字符串不是對象()Java中的字符串存儲在常量池中 ()一個字符串定義后的長度不可變17.關于JDBC操作數據庫,以下說法不正確的( )。 ()JDBC只能操作MySQL數據庫()JDBC中定義的Connection,Statement,ResultSet都是接口()JDBC操作數據庫必須要有相應的實現了JDBC接口的驅動()JDBC可

6、以通過將客戶端的SQL傳遞給數據庫服務器來實現數據庫的操作18.以下程序代碼錯誤的是( )。abstract class Pclass A extends Pabstract class B extends P()P p=new A();()P p=new B();()A a=new A();()P p=new P()void foo();19.以下ollection c創建有誤的是( )。()Collection c=new ArrayList();()Collection c=new LinkedList();()Collection c=new HashSet();()Collectio

7、n c=new HashMap();20. 以下程序代碼錯誤的是( )。interface IAvoid f();()abstract class A implements IA ()class A implements IAvoid f()()class A implements IAvoid f(String s) ()IA a=new IA()void f()得分閱卷人二、程序閱讀(每題 5分,共 20分)21.閱讀程序,并寫出程序運行結果public class T21 static int init()System.out.println("A");return

8、0;static boolean test(int i)System.out.println("B");return i<1;static int add(int i)System.out.println("C");return +i;public static void main(String args) for(int t=init();test(t);t=add(t)System.out.println("D");22.閱讀程序,并寫出程序運行結果class TObjectTObject()System.out.print

9、ln("A");void m(String s)System.out.println("B");void m(int i)System.out.println("C");void m()System.out.println("D");public String toString()return "E"public class T22 public static void main(String args) TObject obj=new TObject();System.out.println(

10、obj);obj.m();obj.m(1);obj.m("1");23 閱讀程序,并寫出程序運行結果abstract class PP()System.out.println("P");abstract void goo();class A extends PA()super();void goo() System.out.println("A");void foo()System.out.println("F");class B extends Pvoid goo() System.out.println(&qu

11、ot;B");void koo()System.out.println("K");public class T23 public static void main(String args) A a=new A();a.goo();a.foo();B b=new B();b.koo();24 閱讀程序,并寫出程序運行結果interface ITvoid t1();void t2();abstract class TA implements ITpublic void t1() System.out.println("A");public void

12、 t3() System.out.println("B");class TB extends TApublic void t1() System.out.println("C");public void t2() System.out.println("D");public void t2(int i) System.out.println("E");public class T24 public static void main(String args) IT obj=new TB();obj.t1();obj.

13、t2();TA aObj=(TA)obj;aObj.t1();aObj.t3();TB bObj=(TB)obj;bObj.t2(100);得分閱卷人三、程序填空(每空2分,共 20分)程序一:如下程序測試Math.random生成隨機數的奇偶比率,仔細閱讀程序和運行結果,補全空白處的代碼。/* * 測試Math.random生成隨機數的奇偶比率 */public class T25 /* * 生成給定數量的到1000隨機整數,并把生成的隨機存入到一個int數組中 * param int count要生成的隨機數量 * return int 生成的隨機數存儲數組 */int createArr

14、ay(int count)int number= (25) ; /創建長度為count的int數組for(int i=0;i<count;i+)int n=(int)(Math.random()*1000);numberi= (26) ;/在number數組中寫入生成的隨機數System.out.println("number"+i+"="+numberi);return (27) ; /返回生成的數組/* *計算給定數組的奇數的比率 *param int number要計算的數組 *return double奇數的比率 */double calc

15、ulateOddRate(int number)int count=(28) ; /讀取數組元素的個數,即要計算平均數的整數個數double odd=0;/奇數計數for(int n:number)if( (29) )/如果n是奇數,奇數計數加odd+;return odd/count;public static void main(String args) T25 t=new T25();int number=t.createArray(100);double oddRate=t.calculateOddRate(number);System.out.println("奇數為:&q

16、uot;+oddRate*100+"%");System.out.println("偶數為:"+(1-oddRate)*100+"%");運行結果:number0=907./此處省略98行number99=598奇數為:52.0%偶數為:48.0%程序二: 以下程序是通過JDBC讀取數據表Student的基本操作,認真閱讀程序和運行結果,補全程序的空白處。表:StudentsIDNAMEGENDER2name02女4name04女部分程序如下class Studentprivate int id;private String name

17、;private String gender;public Student(int id, String name, String gender) super();this.id = id; = name;this.gender = gender;/此處省略n行public String toString() return "Student id=" + id + ", name=" + name + ", gender=" + gender+ ""public class T30 /*取得數據庫

18、連接*/Connection getConnection()/此處省略n行/* 查詢數據庫中所有學生的數據,將一條學生信息記錄轉化成一個Studetn對象, * 多個記錄生成多個Student,將生成的對象放入到List中,一起返回到 */List<Student> queryAllStudent()List<Student> stuList= (30) ;/創建可以存儲Student的ListConnection conn=null;Statement st=null;ResultSet rs=null;try conn=getConnection();st= (31

19、) .createStatement(); /通過連接創建statementrs=st.executeQuery("SELECT ID,NAME,GENDER FROM Students");while( (32) ) /結果是否有記錄Student stu=new Student(rs.getInt("ID"),rs.getString("NAME"),rs.getString("GENDER"); (33) ; /把stu對象加入到stuList中 catch (SQLException e) e.printS

20、tackTrace();finallytry rs.close();st.close();conn.close(); catch (SQLException e) return stuList;/*顯示List中的學生 */void showStudent(List<Student> stuList)for(_(34)_s:stuList) /指明s的類型System.out.println(s);public static void main(String args) T30 demo=new T30();List<Student> stuList=demo.quer

21、yAllStudent();demo.showStudent(stuList);運行結果Student id=2, name=Name02, gender=女Student id=4, name=Name04, gender=女得分閱卷人四、基本代碼編寫(共12分)35、(5分)編寫一個main方法,計算如下數組元素的平均值 double source=2,5,9,10,3;36、(分)文件名解析器,仔細閱讀如下代碼和運行結果,完成WindowsFileNameParse類的代碼,執行后得到給定的運行結果。interface FileNameParse void showSourceFileN

22、ame(); String getDiskName(); String getFullFileName(); String getFileName(); String getExtendName(); String getDir();class WindowsFileNameParse implements FileNameParseprivate String fileName;WindowsFileNameParse(String fileName)this.fileName=fileName;public void showSourceFileName()System.out.print

23、ln("解析文件名:"+this.fileName);/請完成此類的中其他方法的代碼/public class T36 public static void main(String args) FileNameParse fp=new WindowsFileNameParse("d:/My Documents/MyJob/Pages/2012-2013-2/PageA/src/T37.java");fp.showSourceFileName();System.out.println("盤符:"+fp.getDiskName();Sys

24、tem.out.println("文件全名(帶擴展名):"+fp.getFullFileName();System.out.println("文件名(不帶擴展名):"+fp.getFileName();System.out.println("文件擴展名:"+fp.getExtendName();System.out.println("路徑(不帶盤符):"+fp.getDir();運行結果解析文件名:d:/My Documents/MyJob/Pages/2012-2013-2/PageA/src/T37.java盤

25、符:d文件全名(帶擴展名):T37.java文件名(不帶擴展名):T37文件擴展名:java路徑(不帶盤符):/My Documents/MyJob/Pages/2012-2013-2/PageA/src附 String類部分的api docpublic int indexOf(String str)Returns the index within this string of the first occurrence of the specified substring. Examples: "abca".indexOf("a") return 0Pa

26、rameters:str - the substring to search for.Returns:the index of the first occurrence of the specified substring, or -1 if there is no such occurrence.public int lastIndexOf(String str)Returns the index within this string of the last occurrence of the specified substring. The last occurrence of the e

27、mpty string "" is considered to occur at the index value this.length(). Examples:"abca".lastIndexOf("a") return 3Parameters:str - the substring to search for.Returns:the index of the last occurrence of the specified substring, or -1 if there is no such occurrence.public

28、 String substring(int beginIndex)Returns a new string that is a substring of this string. The substring begins with the character at the specified index and extends to the end of this string. Examples: "Harbison".substring(3) returns "bison""emptiness".substring(9) retu

29、rns "" (an empty string) Parameters:beginIndex - the beginning index, inclusive.Returns:the specified substring.public String substring(int beginIndex, int endIndex)Returns a new string that is a substring of this string. The substring begins at the specified beginIndex and extends to the

30、character at index endIndex - 1. Thus the length of the substring is endIndex-beginIndex. Examples: "hamburger".substring(4, 8) returns "urge" "smiles".substring(1, 5) returns "mile" Parameters:beginIndex - the beginning index, inclusive.endIndex - the ending

31、index, exclusive.Returns:the specified substring.得分閱卷人五、設計并編程(共8分)37、仔細閱讀給定的代碼和程序運行結果,完方法size()、del()代碼編寫。MyList類是可以存儲字符串對象的、基于鏈表的List的簡單實現class MyListNode String element;MyListNode nextNode = null;MyListNode(String element) this.element = element;class MyList private MyListNode firstNode = null;pub

32、lic void add(String element) /加入字符串到MyList中MyListNode node = new MyListNode(element);if (firstNode = null) firstNode = node; else MyListNode lastNode = firstNode;while (lastNode.nextNode != null) lastNode = lastNode.nextNode;lastNode.nextNode = node;public int size() /返回MyList中節點數/完成此方法代碼/public Str

33、ing toArray() /將MyList中存儲的所有字符串轉化成Stringint count = size();if (count = 0) return null;String dest = new Stringcount;MyListNode lastNode = firstNode;int i = 0;do desti+ = lastNode.element;lastNode = lastNode.nextNode; while (lastNode != null);return dest;public void del(String element) /刪除節點元素值為eleme

34、nt字符串的節點/完成此方法代碼/public class T37 public static void main(String args) MyList myList = new MyList();myList.add("s001");myList.add("s002");myList.add("s003");myList.add("s004");myList.add("s005");System.out.println("SIZE:" + myList.size();St

35、ring sa1 = myList.toArray();showArray(sa1);myList.del("s001");myList.del("s003");myList.del("s005");System.out.println("SIZE:" + myList.size();String sa2 = myList.toArray();showArray(sa2);static void showArray(String sa) System.out.print("");for (Str

36、ing s : sa) System.out.print(s + " ");System.out.println("");運行結果SIZE:5 s001 s002 s003 s004 s005 SIZE:2s002 s004 Java程序設計試卷(A卷) 評閱標準及考核說明得分閱卷人一、教師答題時間: 15 分鐘 選擇題(每小題 2 分,共 40 分。請將答案填在下面的表格內)1、三基類B 2、三基類 C 3、三基類C 4、三基類A5、三基類D6、三基類C 7、三基類B 8、三基類A9、三基類10、三基類11、三基類C12、三基類C13、三基類D14、三

37、基類15、三基類16、三基類17、三基類18、三基類19、三基類20、三基類得分閱卷人二、教師答題時間: 10 分鐘 填空題(每小題5分,共 20 分)21、三基類 ABDCB22、三基類 AEDCB23、三基類 PAFPK24、三基類 CDCBE得分閱卷人三、教師答題時間: 10 分鐘 程序填空(每空2分,共 20分)25、一般綜合型 new intcount26、一般綜合型 n27、一般綜合型 number28、一般綜合型 number.length29、一般綜合型 n%2=130、一般綜合型 new ArrayList<Student>()或new LinkedList<

38、;Student>()31、一般綜合型 conn32、一般綜合型 rs.next()33、一般綜合型 stuList.add(stu)34、一般綜合型 Student得分閱卷人四、基本代碼編寫(共12分)35、(5分)一般綜合型教師答題時間: 2 分鐘 參考程序public static void main(String args) int source=2,5,9,10,3;double sum=0;int count=source.length;for(int i=0;i<count;i+)sum+=sourcei;System.out.println(sum/count);評分說明:(1)評分總體原則以實現功能為最終標準,無論用什么方式實現只要程序實現了題目要求的功能的情況,沒有語法錯誤(個別筆誤除外)的情況下可得到滿分(2)沒有實現題目要求功能的情況,如下步驟可以得分a.正確寫出main方法得分b.寫出數組的初始化的情況下可以得1分b.寫出for循環正確得分c.格式基本正確得1分36、(7分)綜合型教師答題時間: 3 分鐘 參考程序public String getDiskNa

溫馨提示

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

評論

0/150

提交評論