日韩欧美另类久久久精品_亚洲大色堂人在线无码_国产三级aⅴ在线播放_在线无码aⅴ精品动漫_国产精品精品国产专区

我要投稿 投訴建議

計算機二級Java備考沖刺試題及答案

時間:2024-11-04 22:20:22 智聰 計算機等級 我要投稿
  • 相關(guān)推薦

計算機二級Java備考沖刺試題及答案

  計算機二級考試難度不少,因此考生們要加強練習(xí),下面是小編為大家整理的計算機二級Java備考沖刺試題及答案,歡迎參考~

計算機二級Java備考沖刺試題及答案

  計算機二級Java備考沖刺試題及答案 1

  1、以下 不是Java中有效的關(guān)鍵字。

  A、const

  B、NULL

  C、false

  D、this

  本題考查的是Java的關(guān)鍵字。

  Java中常量null,false,true,new,this,const,break都是小寫。

  故本題答案為B。

  2、關(guān)于被私有訪問控制符private修飾的成員變量,以下說法正確的是 。

  A、可以被三種類所引用:該類自身、與它在同一個包中的其他類、在其他包中的該類的子類

  B、可以被兩種類訪問和引用:該類本身、該類的所有子類

  C、只能被該類自身所訪問和修改

  D、只能被同一個包中的類訪問

  本題考查的是成員變量的修飾符。

  private修飾的變量說明變量為私有訪問。只能被該類自己訪問或調(diào)用,是對成員變量的高級保護(hù)。

  故本題答案為C。

  3、當(dāng)檢索一個壓縮文件時,首先要建立壓縮文件輸入流對象。該對象 。

  A、以選中的壓縮文件為參數(shù)

  B、以FileInputStream對象為參數(shù)

  C、以InputStreamReader對象為參數(shù)

  D、以BufferedReader對象為參數(shù)

  本題考查的是壓縮文件。

  在java.io包中提供了對壓縮文件進(jìn)行操作的能力。它是通過壓縮文件輸入流與壓縮文件輸出流來實現(xiàn)的,其分別繼承自InflaterInputStream與DeflaterOutputStream。在創(chuàng)建壓縮文件輸入流時,其初始化參數(shù)是一個FileInputStream類的實例。

  故本題答案為B。

  4、計算機中的流是______ 。

  A、流動的字節(jié)

  B、流動的對象

  C、流動的文件

  D、流動的數(shù)據(jù)緩沖區(qū)

  本題考查的是流的概念。

  流,最早從C語言中引入的。其可以看成是一個流動的數(shù)據(jù)緩沖區(qū)。數(shù)據(jù)從數(shù)據(jù)源方向經(jīng)過緩沖區(qū)流向數(shù)據(jù)的目的地。在傳送的過程中,其傳送方式是串行的。在Java中的java.io包中定義了Java中常見流的接口與類。其中包括兩個最基本的流的.抽象類,它們分別是OutputStream與InputStream。其余的流都分別從這兩個基本類中繼承而來。

  故本題答案為D。

  1、結(jié)構(gòu)化程序設(shè)計主要強調(diào)的是______。

  A、程序的規(guī)模

  B、程序的易讀性

  C、程序的執(zhí)行效率

  D、程序的可移植性

  結(jié)構(gòu)化程序設(shè)計主要強調(diào)的是結(jié)構(gòu)化程序清晰易讀,可理解性好,程序員能夠進(jìn)行逐步求精、程序證明和測試,以保證程序的正確性。

  本題答案為B。

  2、數(shù)據(jù)庫設(shè)計包括兩個方面的設(shè)計內(nèi)容,它們是______。

  A、概念設(shè)計和邏輯設(shè)計

  B、模式設(shè)計和內(nèi)模式設(shè)計

  C、內(nèi)模式設(shè)計和物理設(shè)計

  D、結(jié)構(gòu)特性設(shè)計和行為特性設(shè)計

  數(shù)據(jù)庫設(shè)計可分為概念設(shè)計與邏輯設(shè)計。

  數(shù)據(jù)庫概念設(shè)計的目的是分析數(shù)據(jù)間內(nèi)在語義關(guān)聯(lián),在此基礎(chǔ)上建立一個數(shù)據(jù)的抽象模型。

  數(shù)據(jù)庫邏輯設(shè)計的主要工作是將ER圖轉(zhuǎn)換為指定的RDBMS中的關(guān)系模型。

  本題答案是A。

  3、為AB類的一個無形式參數(shù)無返回值的方法method書寫方法頭,使得使用類名AB作為前綴就可以調(diào)用它,該方法頭的形式為______。

  A、static void method( )

  B、public void method( )

  C、final void method( )

  D、abstract void method( )

  本題考查的是修飾符的含義。

  1、public修飾的方法可被其它類訪問或引用。

  2、abstract修飾的方法是抽象方法,抽象方法沒有方法體,要使用抽象方法,必須先實現(xiàn)此抽象方法。

  3、final修飾的方法不能被繼承。

  4、static修飾的方法為靜態(tài)方法,靜態(tài)方法不需要類的實例化就可以被類直接調(diào)用。

  故要使得類名AB可以直接調(diào)用method()方法,則必須在method()前用static來修飾。

  故本題答案為A。

  5、outer: for(int i=0;i<3; i++)

  inner: for(int j=0;j<2;j++)

  {

  if(j==1) continue outer;

  System.out.println(j+ "and "+i+";");

  }

  以上代碼輸出是 。

  A、0 and 0;0 and 1;0 and 2;

  B、0 and 0;1 and 0;2 and 0;

  C、1 and 0;1 and 1;1 and 2;

  D、2 and 0;2 and 1;2 and 2;

  本題考查的是多重循環(huán)。

  首先介紹一下continue語句的功能:continue語句是跳過循環(huán)體中下面尚未執(zhí)行的語句,回到循環(huán)體的開始,繼續(xù)下一輪的循環(huán)。

  本題程序運行過程如下:

  i=0:

  j=0 條件j==1不成立,輸出j和i,即0 and 0;

  j=1 條件j==1成立,執(zhí)行continue,跳過System.out.println(j+ "and "+i+";");執(zhí)行下一輪循環(huán)j=2;

  j=2 條件j<2不滿足,退出內(nèi)層循環(huán),繼續(xù)外層循環(huán)。

  i=1:

  j=0 條件j==1不成立,輸出j和i,即0 and 1;

  j=1 條件j==1成立,執(zhí)行continue,跳過System.out.println(j+ "and "+i+";");執(zhí)行下一輪循環(huán)j=2;

  j=2 條件j<2不滿足,退出內(nèi)層循環(huán),繼續(xù)外層循環(huán)。

  i=2:

  j=0 條件j==1不成立,輸出j和i,即0 and 2;

  j=1 條件j==1成立,執(zhí)行continue,跳過System.out.println(j+ "and "+i+";");執(zhí)行下一輪循環(huán)j=2;

  j=2 條件j<2不滿足,退出內(nèi)層循環(huán),繼續(xù)外層循環(huán)。

  i=3:條件i<3不滿足,結(jié)束。

  故本題答案為A。

  編程題

  1、 編寫一個Java Application 程序App.java,main程序輸入10個整數(shù)給數(shù)組,通過函數(shù)getMinAndMax(int a[])得到這10個整數(shù)的最大值和最小值并輸出結(jié)果。

  class App {

  static void getMinAndMax(int a[]) {

  int min,max;

  min = max = a[0];

  for(int i=1;i if(a[i]>max)

  max=a[i];

  if(a[i] min=a[i]; }

  System.out.println(“Array’Max Value:”+max);

  System.out.println(“Array’Min Value:”+min);

  }

  public static void main(String[] args) {

  int arr[] = {4,6,72,9,14,3,8,23,56,32};

  getMinAndMax(arr); } }

  2、編寫一個完整的Java Application 程序。包含接口ShapeArea, Rectangle

  類,Triangle類及Test類,具體要求如下:

  ⑴接口ShapeArea:

  double getArea( ):

  求一個形狀的面積

  double getPerimeter ( ):

  求一個形狀的周長

 、祁 Rectangle:實現(xiàn)ShapeArea接口,并有以下屬性和方法:

 、 屬性

  width: double類型,表示矩形的長 height: double類型,表示矩形的高

 、 方法

  Rectangle(double w, double h):構(gòu)造函數(shù)

  toString( )

  方法 :輸出矩形的描述信息,如“width=1.0,height=2.0, perimeter=6.0, area=2.0”

  ⑶類Triangle:實現(xiàn)ShapeArea接口,并有以下屬性和方法:

 、 屬性

  x,y,z: double型,表示三角形的三條邊

  s: 周長的1/2(注:求三角形面積公式為))( )((zsysxss,s=(x+y+z)/2 ,開方可用Math.sqrt(double)方法)

 、 方法

  Triangle(double x, double y, double z):

  構(gòu)造函數(shù),給三條邊和s賦初值。

  toString( ):

  輸出矩形的描述信息,如“three sides:3.0,4.0,5.0,perimeter=12.0,area=6.0”

 、萒est類作為主類要完成測試功能

 、 生成Rectangle對象

 、

  調(diào)用對象的toString方法,輸出對象的描述信息

  interface ShapeArea { double getArea( );

  double getPerimeter( );

  }

  class Rectangle implements ShapeArea { double width,height;

  Rectangle(double w,double h) {ko width =w;

  height=h;

  }

  public void toString( )

  {

  System.out.println("width="+width+",height="+height+", perimeter="+ getPerimeter( )+", area="+ getArea( ));

  }

  public double getArea( )

  { return width*height;

  }

  public double getPerimeter( )

  { return 2*(width+height);

  } }

  class Triangle implements ShapeArea { double x,y,z,s; Triangle(double x, double y, double z) { this.x =x; this.y=y;

  this.z=z; s = (x+y+z)/2; }

  public void toString( )

  {

  System.out.println("Three Sides:"+x+","+y+","+z+",Perimeter="+ getPerimeter( )+", area="+ getArea( ));

  }

  public double getArea( )

  {

  return Math.sqrt(s*(s-x)*(s-y)*(s-z));

  }

  public double getPerimeter( )

  { return x+y+z;

  } }

  class test { public static void main(String[] args) { Rectangle rct = new Rectangle(4,5);

  rct.to_String( );

  } }

  1、下列敘述中,錯誤的是______。

  A、Applet的默認(rèn)布局管理器是FlowLayout

  B、JApplet中增加構(gòu)件是加到JApplet的內(nèi)容面板上,不是直接加到JApplet中

  C、JApplet的內(nèi)容面板的默認(rèn)布局管理器是BorderLayout

  D、JApplet的內(nèi)容面板的默認(rèn)布局管理器是FlowLayout

  本題考的是布局管理器。

  向JApplet中增加構(gòu)件,是把構(gòu)件添加到Swing Applet的內(nèi)容面板中;對JApplet設(shè)置布局管理器,是對Swing Applet的內(nèi)容面板進(jìn)行設(shè)置,Swing Applet的內(nèi)容面板的默認(rèn)布局管理器是BorderLayout,所以,JApplet的內(nèi)容面板的默認(rèn)布局管理器是BorderLayout;而Applet的默認(rèn)布局管理器是FlowLayout。

  故本題答案為D

  而japplet是applet的子類

  2、 護(hù)本地主機,對Applet安全限制中正確的是______。

  A、Applet可加載本地庫或方法

  B、Applet可讀、寫本地計算機的文件系統(tǒng)

  C、Applet可向Applet之外的任何主機建立網(wǎng)絡(luò)連接

  D、Applet不能運行任何本地可執(zhí)行程序

  許多瀏覽器為了保護(hù)本地主機,對Applet作了如下安全限制:

  1、Applet不能運行任何本地可運行程序;

  2、禁止加載本地庫或方法;

  3、禁止讀、寫本地計算機的文件系統(tǒng);

  4、禁止向提供Applet之外的任何主機建立網(wǎng)絡(luò)連接;

  5、不能讀取某些系統(tǒng)信息,除了Java版本號、操作系統(tǒng)名或版本號、文件分隔符、路徑分隔符以及行分隔符之外,Applet不能獲得與本地計算機有關(guān)的任何信息,如:用戶名、電子郵件地址等;

  6、由一個Applet彈出的窗口外觀上與一個Application彈出的窗口不同,Applet彈出的窗口中將會有警告提示信息,以幫助用戶區(qū)分Applet窗口與可信的Application窗口。

  故本題答案為D。

  3、Java對I/O訪問所提供的同步處理機制是______。

  A、字節(jié)流

  B、過濾流

  C、字符流

  D、壓縮文件流

  本題考的是過濾流。

  Java對I/O訪問所提供的同步處理機制是過濾流。一般,使用一個過濾流要求首先把過濾流連接到某個I/O流上,再通過構(gòu)造方法的參數(shù)去指定連接的I/O流。

  故本題答案為B。

  4、 Panel類的默認(rèn)布局管理器是______。

  A、BorderLayout

  B、CardLayout

  C、FlowLayout

  D、GridBagLayout

  本題考的是布局管理器。

  FlowLayout是Panel和Applet的默認(rèn)布局管理器。

  故本題答案為C。

  5、Java對文件類提供了許多操作方法,能獲得文件對象父路徑名的方法是______。

  A、getAbsolutePath()

  B、getParentFile()

  C、getAbsoluteFile()

  D、getName()

  本題考的是File類提供的方法。

  getAbsolutePath():得到一個文件的絕對路徑名;

  getParentFile():得到文件對象父路徑名;

  getAbsoluteFile():等價于new File(this.getAbsolutePath());

  getName():得到一個不包含路徑的文件名。

  故本題答案為B。

  1、Swing與AWT相比新增的布局管理器是______。

  A、CardLayout

  B、GridLayout

  C、GridBagLayout

  D、BoxLayout

  本題考查的是布局管理器。

  Swing繼續(xù)沿用AWT中的布局管理器,包括FlowLayout、BorderLayout、CardLayout、GridLayout、GridBagLayout,另外Swing新增加了一個BoxLayout布局管理器。

  故本題答案為D。

  2、下列對Java特性的敘述中,錯誤的是______。

  A、在編寫Java子類時可以自由地增加新方法和屬性

  B、Java的Applet要求編程首先創(chuàng)建JFrame窗口

  C、Java語言用解釋器執(zhí)行字節(jié)碼

  D、Java中的類一般都有自己的屬性和方法

  本題考查的是Applet的概念。

  Applet是能夠嵌入到HTML頁面中,并能夠在瀏覽器中運行的Java類,本身并不一定需要首先創(chuàng)建窗體,但可以使用JApple類來使用Swing構(gòu)件。

  Swing包中的JFrame類與創(chuàng)建窗口有關(guān),是提供給java應(yīng)用程序用來放置圖形用戶界面的一個容器。

  JApplet類與JFrame一樣是頂層的Swing容器。包含Swing構(gòu)件的Applet必須是JApplet的子類。

  故本題答案為B。

  3、閱讀下面求質(zhì)數(shù)的程序

  import java.lang.Math.*;

  public class MorePrimesTest{

  public static void main(String[] args){

  long[] primes=new long[20];

  primes[0]=2L;

  primes[1]=3L;

  long number=5L;

  outer:

  for(int count=2;count long limit=(long)Math.ceil(Math.sqrt((double)number));

  for(int i=1;i if(number ______ primes[i]==0L){

  continue outer;

  }

  }

  primes[count++]=number;

  }

  for(int j=0;j long n=primes[j];

  System.out.println(n);

  }

  }

  }

  在程序下劃線處填入的正確選項是______。

  A、&

  B、*

  C、/

  D、%

  本題考查的是JAVA程序結(jié)構(gòu)。

  所謂質(zhì)數(shù)或稱素數(shù),就是一個正整數(shù),除了本身和1以外并沒有任何其他因子。任何一個整數(shù),可以寫成一串質(zhì)數(shù)相乘的積。

  程序中首先定義了包含有20個元素的長整型數(shù)組,為數(shù)組的第一,第二個元素賦值,并且還定義了一個長整型變量"long number=5L;",然后進(jìn)入循環(huán),該循環(huán)的作用是判斷當(dāng)前變量number的值是否為質(zhì)數(shù),其中Math.sqrt(double x)方法的作用是求x的平方根,而Math.ceil()方法的作用是求最小的整數(shù)但不小于本身(例如:Math.ceil(3.14)則返回4),在本次循環(huán)中,需要判斷變量number與primes[i]的取余操作,如果變量number與小于自己的平方根取整且小于count的數(shù)取余數(shù)為0,則跳出循環(huán),將number的值寫入數(shù)組中,當(dāng)20個元素填滿后,程序依次輸出數(shù)組元素。

  故本題答案為D。

  4、在Java中,"目錄"被看作是______。

  A、文件

  B、流

  C、數(shù)據(jù)

  D、接口

  本題考查的是目錄的概念。

  目錄在Java中作為一種特殊文件,即文件名的列表,通過類File所提供的方法,可得到文件或目錄的描述信息(包括名字、路徑、長度、可讀、可寫等),也可以生成新文件、目錄、修改文件和目錄,查詢文件屬性,重命名文件或者刪除文件。

  故本題答案為A。

  5、下列帶下劃線的標(biāo)識符符合Java命名約定的是______。

  A、package com.Bi.hr

  B、public class xyz

  C、int I

  D、void setCustomerName()

  本題考查的是Java命名約定。

  包的名字應(yīng)該都是由小寫單詞組成。它們?nèi)际切懽帜福幢阒虚g的單詞亦是如此,所以A選項錯誤。

  類名的第一個字母一定要大寫,所以B選項錯誤;

  變量的第一個字母應(yīng)該為小寫,所以C選項錯誤;

  與屬性相對應(yīng)的get、set方法為:set(get)+屬性名,屬性名第一個字母為大寫,所以D選項正確。

  故本題答案為D。

  6、在Java語言中,被稱為內(nèi)存分配的運算符是______。

  A、new

  B、instance of

  C、[ ]

  D、( )

  本題考查的是JAVA關(guān)鍵字。

  Java語言中,程序為對象動態(tài)分配內(nèi)存。Java中內(nèi)存分配的運算符是new。

  故本題答案為A。

  計算機二級Java備考沖刺試題及答案 2

  一、選擇題

  1. 下列選項中,不屬于Java語言特點的是( )

  A. 面向?qū)ο?/p>

  B. 平臺無關(guān)性

  C. 安全性

  D. 編譯執(zhí)行

  答案:D。Java是解釋執(zhí)行的編程語言,它先將Java源程序編譯成字節(jié)碼文件(.class文件),然后由Java虛擬機(JVM)解釋執(zhí)行字節(jié)碼文件,而不是編譯執(zhí)行。Java具有面向?qū)ο、平臺無關(guān)性、安全性等特點。

  2. 以下標(biāo)識符中,合法的Java標(biāo)識符是( )

  A. 3abc

  B. _abc

  C. -abc

  D. static

  答案:B。Java標(biāo)識符是以字母、美元符號($)或者下劃線(_)開頭,后面可以跟字母、數(shù)字、美元符號或者下劃線的字符序列。A選項以數(shù)字開頭不合法;C選項以減號開頭不合法;D選項“static”是Java的關(guān)鍵字,不能作為標(biāo)識符。

  3. 以下數(shù)據(jù)類型中,占用內(nèi)存空間最小的是( )

  A. short

  B. int

  C. long

  D. byte

  答案:D。在Java中,byte占用1個字節(jié)(8位),short占用2個字節(jié),int占用4個字節(jié),long占用8個字節(jié)。

  4. 下列關(guān)于Java數(shù)組的說法,正確的是( )

  A. 數(shù)組的長度可以在運行時改變

  B. 數(shù)組一旦創(chuàng)建,其元素的類型就不能改變

  C. 可以使用new關(guān)鍵字創(chuàng)建數(shù)組,但不能直接初始化數(shù)組元素

  D. 二維數(shù)組在內(nèi)存中是按列存儲的

  答案:B。A選項,Java數(shù)組的長度在創(chuàng)建后不能改變;C選項,可以在創(chuàng)建數(shù)組的同時初始化數(shù)組元素,例如int[] arr = {1, 2, 3};;D選項,二維數(shù)組在內(nèi)存中是按行存儲的。

  5. 在Java中,以下代碼的輸出結(jié)果是( )

  java

  public class Main {

  public static void main(String[] args) {

  int a = 10;

  System.out.println(a++);

  }

  }

  A. 9

  B. 10

  C. 11

  D. 編譯錯誤

  答案:B。a++是后自增運算符,先使用a的值,然后再將a的值加1。所以先輸出a的當(dāng)前值10,之后a的值變?yōu)?1。

  6. 以下關(guān)于Java方法重載的說法,正確的是( )

  A. 方法重載是指在一個類中可以定義多個同名方法,但參數(shù)列表必須不同

  B. 方法重載是指在不同類中可以定義多個同名方法,參數(shù)列表可以相同

  C. 方法重載的返回值類型必須不同

  D. 方法重載與方法的訪問修飾符有關(guān)

  答案:A。方法重載是在同一個類中定義多個同名方法,但參數(shù)的個數(shù)、類型或者順序不同。方法重載與返回值類型和訪問修飾符無關(guān)。

  7. 在Java中,以下接口的定義正確的是( )

  java

  A. interface MyInterface {

  void method();

  }

  B. abstract interface MyInterface {

  void method();

  }

  C. class MyInterface {

  void method();

  }

  D. interface MyInterface {

  private void method();

  }

  答案:A。接口的定義使用interface關(guān)鍵字,接口中的方法默認(rèn)是public abstract的,不能使用private等訪問修飾符,也不能用abstract關(guān)鍵字修飾接口本身。

  8. 以下關(guān)于Java異常處理的說法,錯誤的是( )

  A. try - catch塊可以捕獲并處理異常

  B. 可以使用throws關(guān)鍵字在方法聲明中拋出異常

  C. 所有異常都必須被捕獲和處理

  D. 異常分為檢查異常和非檢查異常

  答案:C。并不是所有異常都必須被捕獲和處理,非檢查異常(如RuntimeException及其子類)可以不進(jìn)行捕獲和處理,但檢查異常(如IOException等)通常需要在方法中進(jìn)行處理或者在方法聲明中使用throws拋出。

  9. 在Java中,用于讀取文本文件的類是( )

  A. FileInputStream

  B. FileReader

  C. BufferedReader

  D. InputStreamReader

  答案:B。FileReader類用于讀取字符文件,F(xiàn)ileInputStream用于讀取字節(jié)文件,BufferedReader通常用于緩沖字符輸入流以提高讀取效率,它一般包裝FileReader等字符輸入流來使用,InputStreamReader是字節(jié)流到字符流的轉(zhuǎn)換橋梁。

  10. 以下關(guān)于Java多線程的說法,正確的是( )

  A. 一個Java程序只能有一個線程

  B. 線程是通過繼承Thread類或者實現(xiàn)Runnable接口來創(chuàng)建的

  C. 多線程可以提高程序的執(zhí)行速度

  D. 線程的優(yōu)先級越高,就一定先執(zhí)行

  答案:B。A選項,一個Java程序可以有多個線程;C選項,多線程主要是為了提高程序的并發(fā)性能,不一定能提高執(zhí)行速度,因為線程之間的切換等也會有開銷;D選項,線程優(yōu)先級高的線程更有可能先執(zhí)行,但不是一定先執(zhí)行,還取決于操作系統(tǒng)的調(diào)度等因素。

  二、程序填空題

  1. 以下程序是計算1 - 100之間的整數(shù)之和,請補充完整。

  java

  public class Main {

  public static void main(String[] args) {

  int sum = 0;

  for (int i = 1; i <= 100; ____) {

  sum += i;

  }

  System.out.println("1 - 100的和為:" + sum);

  }

  }

  答案:i++。在for循環(huán)中,需要在每次循環(huán)后更新循環(huán)變量i的值,使其能夠按照順序從1遞增到100,i++實現(xiàn)了這個功能。

  2. 以下程序定義了一個方法,用于判斷一個數(shù)是否為偶數(shù),請補充完整。

  java

  public class Main {

  public static boolean isEven(int num) {

  return ____;

  }

  public static void main(String[] args) {

  int n = 4;

  if (____) {

  System.out.println(n + "是偶數(shù)");

  } else {

  System.out.println(n + "是奇數(shù)");

  }

  }

  }

  答案:num % 2 == 0;isEven(n)。在isEven方法中,判斷一個數(shù)是否為偶數(shù)可以通過判斷該數(shù)除以2的余數(shù)是否為0來實現(xiàn),所以返回num % 2 == 0。在main方法中,調(diào)用isEven方法來判斷n是否為偶數(shù),所以應(yīng)該填寫isEven(n)。

  三、程序改錯題

  1. 以下程序的目的是交換兩個整數(shù)的'值,但是程序有錯誤,請改正。

  java

  public class Main {

  public static void main(String[] args) {

  int a = 10, b = 20;

  a = b;

  b = a;

  System.out.println("a = " + a + ", b = " + b);

  }

  }

  答案:

  java

  public class Main {

  public static void main(String[] args) {

  int a = 10, b = 20;

  int temp = a;

  a = b;

  b = temp;

  System.out.println("a = " + a + ", b = " + b);

  }

  }

  分析:原程序中,先將b的值賦給a,此時a的值變?yōu)?0,然后再將a(此時為20)的值賦給b,這樣并沒有實現(xiàn)交換。正確的做法是引入一個臨時變量temp,先將a的值保存到temp中,然后將b的值賦給a,最后將temp(原來a的值)賦給b。

  2. 以下程序是計算一個整數(shù)數(shù)組的平均值,但是有錯誤,請改正。

  java

  public class Main {

  public static void main(String[] args) {

  int[] arr = {1, 2, 3, 4, 5};

  int sum = 0;

  for (int i = 0; i < arr.length; i++) {

  sum += arr[i + 1];

  }

  double average = (double)sum / arr.length;

  System.out.println("平均值為:" + average);

  }

  }

  答案:

  java

  public class Main {

  public static void main(String[] args) {

  int[] arr = {1, 2, 3, 4, 5};

  int sum = 0;

  for (int i = 0; i < arr.length; i++) {

  sum += arr[i];

  }

  double average = (double)sum / arr.length;

  System.out.println("平均值為:" + average);

  }

  }

  分析:在計算數(shù)組元素之和的for循環(huán)中,原程序sum += arr[i + 1];會導(dǎo)致數(shù)組越界訪問(當(dāng)i為arr.length - 1時),并且沒有正確累加數(shù)組元素。應(yīng)該將其改為sum += arr[i];,這樣才能正確地將數(shù)組中的每個元素累加到sum中。

  四、程序設(shè)計題

  1. 編寫一個Java程序,輸入一個整數(shù)n,計算并輸出n的階乘。

  java

  import java.util.Scanner;

  public class Main {

  public static void main(String[] args) {

  Scanner scanner = new Scanner(System.in);

  System.out.print("請輸入一個整數(shù)n: ");

  int n = scanner.nextInt();

  int result = 1;

  for (int i = 1; i <= n; i++) {

  result *= i;

  }

  System.out.println(n + "的階乘是:" + result);

  }

  }

  2. 定義一個Student類,包含姓名(name)和成績(score)兩個屬性,以及一個方法display()用于輸出學(xué)生的姓名和成績。在main方法中創(chuàng)建Student類的對象并調(diào)用display()方法。

  java

  class Student {

  private String name;

  private double score;

  public Student(String name, double score) {

  this.name = name;

  this.score = score;

  }

  public void display() {

  System.out.println("姓名:" + name + ", 成績:" + score);

  }

  }

  public class Main {

  public static void main(String[] args) {

  Student student = new Student("張三", 90.5);

  student.display();

  }

  }

【計算機二級Java備考沖刺試題及答案】相關(guān)文章:

計算機二級JAVA沖刺試題及答案02-14

2016計算機二級JAVA沖刺試題及答案02-21

Java經(jīng)典筆試題(含答案)11-06

2016年計算機二級考試試題(Java)02-21

2017計算機二級考試試題與答案02-11

2016計算機二級考試練習(xí)試題及答案02-20

計算機二級Visual Basic考試題及答案02-12

2016年計算機二級考試試題C語言沖刺試題02-21

小升初英語沖刺試題(帶答案)02-13