基本操作
在考生檔案夾中存有檔案名為Java_1.java的檔案,該程式是不完整的,請在注釋行"//Found"下一行語句的下劃線地方填入正确内容,然後删除下劃線,請勿删除注釋行或改動其他已有語句内容。存盤時檔案必須存放在考生檔案夾下,不得改變原有檔案的檔案名。
本題的要求是:
計算并列印1,3,5,7的階乘以及這些階乘的和。
完成程式,使程式輸出結果如下:
1!=1
3!=6
5!=120
7!=5040
sum=5167
public class Java_1
{
public static void main(String[] args)
{
long sum;
//*********Found**********
___________________;
for(int i=1;i<8;i+=2){
long b=1;
//*********Found**********
for(int j=1; j<=___________; j++)
//*********Found**********
__________________;
System.out.println( i + "!= " + b);
sum+=b;
}
System.out.println("sum=" + sum);
}
}
本題考查的是變量初始化。
Long sum;這段代碼中,并沒有給sum指派,而後面的代碼中卻将sum進行了計算,這樣一來則會報錯,是以第一空填寫"sum = 0"。
本例中要求的是階乘,第一層循環中定義了b = 1,第二層循環中定義了j小于等于i,是以第二空填空"i",b為階乘結果,是以第三空填寫"b = b * j"。
具體程式如下:
public class Java_1
{
public static void main(String[] args)
{
long sum;
//*********Found**********
sum=0;
for(int i=1;i<8;i+=2){
long b=1;
//*********Found**********
for(int j=1; j<=i; j++)
//*********Found**********
b*=j;
System.out.println( i + "!= " + b);
sum+=b;
}
System.out.println("sum=" + sum);
}
}
簡單應用
在考生檔案夾中存有檔案名為Java_2.java的檔案,該程式是不完整的,請在注釋行"//Found"下一行語句的下劃線地方填入正确内容,然後删除下劃線,請勿删除注釋行或改動其他已有語句内容。存盤時檔案必須存放在考生檔案夾下,不得改變原有檔案的檔案名。
本題的要求是:
統計骰子旋轉500次後每個面出現的頻率(起始面是随機的),某次程式結果如下: 
//*********Found**********
import javax.________________.*;
public class Java_2{
public static void main( String args[] ){
int frequency1 = 0, frequency2 = 0,
frequency3 = 0, frequency4 = 0,
frequency5 = 0, frequency6 = 0, face;
//骰子旋轉500次的代碼
for ( int roll = 1; roll <= 500; roll++ ) {
face = 1 + (int) ( Math.random() * 6 );
//*********Found**********
switch ( __________________ ) {
case 1:
++frequency1;
break;
case 2:
++frequency2;
break;
case 3:
++frequency3;
break;
case 4:
++frequency4;
break;
case 5:
++frequency5;
break;
case 6:
++frequency6;
break;
}
}
//*********Found**********
JTextArea outputArea = _____________________ JTextArea( 7, 10 );
outputArea.setText(
"面\t頻率" +
"\n1\t" + frequency1 +
"\n2\t" + frequency2 +
"\n3\t" + frequency3 +
"\n4\t" + frequency4 +
"\n5\t" + frequency5 +
"\n6\t" + frequency6 );
//*********Found**********
JOptionPane.showMessageDialog( null, ___________________,
"骰子旋轉500次",
JOptionPane.INFORMATION_MESSAGE );
//*********Found**********
System.____________________( 0 );
}
}
本題考查的是JavaSwing。
由代碼上下文可知。本題将用到javax.swing相關包,是以第一空填寫"swing"。
由題意得知需要判斷骰子每一面出現的次數,在本例中,循環内的face變量即為随機骰子數是幾,在之後的switch中可看出,能夠根據變量對相應的出現面數的變量做加法操作,是以switch裡應判斷face變量,是以第二空填寫"face"。
JTextArea是一個文本域對象,需要new關鍵字來執行個體化,是以第三空填寫"new"。
JOptionPane.showMessageDialog是建立一個提示框視窗,第二個參數是加入其中的元件,根據題意得知,需要加入的是outputArea文本域對象,是以第四空填寫"outputArea"。
最後程式退出,是以第五空填寫"exit"。
具體程式如下:
//*********Found**********
import javax.swing.*;
public class Java_2{
public static void main( String args[] ){
int frequency1 = 0, frequency2 = 0,
frequency3 = 0, frequency4 = 0,
frequency5 = 0, frequency6 = 0, face;
//骰子旋轉500次的代碼
for ( int roll = 1; roll <= 500; roll++ ) {
face = 1 + (int) ( Math.random() * 6 );
//*********Found**********
switch ( face ) {
case 1:
++frequency1;
break;
case 2:
++frequency2;
break;
case 3:
++frequency3;
break;
case 4:
++frequency4;
break;
case 5:
++frequency5;
break;
case 6:
++frequency6;
break;
}
}
//*********Found**********
JTextArea outputArea = new JTextArea( 7, 10 );
outputArea.setText(
"面\t頻率" +
"\n1\t" + frequency1 +
"\n2\t" + frequency2 +
"\n3\t" + frequency3 +
"\n4\t" + frequency4 +
"\n5\t" + frequency5 +
"\n6\t" + frequency6 );
//*********Found**********
JOptionPane.showMessageDialog( null, outputArea,
"骰子旋轉500次",
JOptionPane.INFORMATION_MESSAGE );
//*********Found**********
System.exit( 0 );
}
}
綜合應用
在考生檔案夾中存有檔案名為Java_3.java的檔案,該程式是不完整的,請在注釋行"//Found"下一行語句的下劃線地方填入正确内容,然後删除下劃線,請勿删除注釋行或改動其他已有語句内容。存盤時檔案必須存放在考生檔案夾下,不得改變原有檔案的檔案名。
本題的要求是:
利用D0/While循環語句編寫Applet程式,實作畫10個同心圓。
程式運作結果如下: 
import java.awt.Graphics;
import javax.swing.JApplet;
//*********Found**********
public class Java_3 extends __________________ {
//*********Found**********
public void paint(________________ g){
int counter = 1;
do {
//*********Found**********
___________.drawOval( 110 - counter * 10, 110 - counter * 10,
counter * 20, counter * 20 );
//*********Found**********
___________________;
} while (counter<=10);
}
}
本題考查的是畫闆。
根據題意得知,需要建立的是Applet程式,是以第一空填寫"JApplet"。
Paint方法是繪制容器的畫布方法,Graphics是其參數,表示畫筆,是以第二空填寫"Graphics"。
drawOval是畫圓方法,為畫筆對象下的方法,是以第三空填寫"g"。
根據題意得知需要畫同心圓,而每一個同心圓是越來越小的,那麼counter根據代碼上下文可看出,是每一次畫圓後減去的長度繼續畫下一個圓,是以這裡讓counter每次循環都增加一次即可,是以第四空填寫"counter++"。
具體程式如下:
import java.awt.Graphics;
import javax.swing.JApplet;
//*********Found**********
public class Java_3 extends JApplet {
//*********Found**********
public void paint(Graphics g){
int counter = 1;
do {
//*********Found**********
g.drawOval( 110 - counter * 10, 110 - counter * 10,
counter * 20, counter * 20 );
//*********Found**********
counter++;
} while (counter<=10);
}
}