20145223《Java程序程序設計》實驗一實驗報告


實驗一 Java開發環境的熟悉(Windows + IDE)

實驗內容

1.使用JDK編譯、運行簡單的Java程序;
2.使用IDE 編輯、編譯、運行、調試Java程序。

實驗步驟

(一)命令行下Java程序開發
(1)首先打開cmd(Windows系統下),然后輸入cd\workpace進入到workspace。
(2)輸入md 20145223建立一個目錄名為自己學號的實驗目錄,再輸入cd 20145223進入到實驗目錄中。
(3)在此目錄下輸入cd exp1建立實驗1目錄,並且輸入cd exp1進入
(4)將實現寫好的代碼保存到exp1后,使用javac HelloJava.java編譯代碼
(5)編譯完后,再使用java HelloJava 運行代碼

(二)IDE下Java程序開發、編譯、運行、調試
(1)創建一個九九乘法表的項目
(2)實驗代碼:

package 九九乘法;

public class 九九乘法 {
    public static void main(String[] args) {
        for(int i=1;i<10;i++)
        {
            for(int j=1;j<10;j++)
            {
                if(i>=j){
                System.out.printf("%d*%d=%2d  ",j,i,i*j);
                }
            }
            System.out.printf("%n");
        }
    }
}
     

(3)代碼調試
·當你的代碼出現錯誤,Netbeans會在出現錯誤的代碼最左端給你提示,並且告訴你出現的錯誤是什么

(4)運行程序結果:

練習

在netbeans下實現學生成績管理功能,並進行測試。

·實驗代碼如下:

package 學生成績管理系統;
import java.util.Scanner; 
public class 學生成績管理系統 {
    public static void main(String[] args) {
Scanner input=new Scanner(System.in);  
System.out.println("請輸入學生的人數:");   
int number;                                           //學生的人數 
number=input.nextInt();   
System.out.println("請輸入課程的數目:");   
int courses;                                        //課程的數目 
courses=input.nextInt(); 
String [] coursesname=new String[courses];   //課程的名字


for(int i=0;i<coursesname.length;i++)  
{   
    System.out.println("請輸入第"+(i+1)+"門課的名字:");  
    coursesname[i]=input.next(); 
} 
String [] name=new String[number];                //學生的名字 
int [][] score=new int[number][courses];      //學生的科目成績,二維數組
for(int i=0;i<name.length;i++) 
{   
    System.out.println("請輸入第"+(i+1)+"個學生的名字:");   
    name[i]=input.next();   
for(int j=0;j<coursesname.length;j++)    
{      
    System.out.println("請輸入"+name[i]+coursesname[j]+"的成績:");    
    score[i][j]=input.nextInt();   }  
}
int sum=0;//每個學生的成績總分   
int  avg=0;//每個學生的平均分 
int [] scoreSum=new int [number];  
int [] ci=new int[number];//學生的名次
for(int i=0;i<number;i++)  
{     for(int j=0;j<courses;j++)   
{      sum+=score[i][j];
}     scoreSum[i]=sum;  
ci[i]=sum;   
sum=0;  
}
for(int i=0;i<number-1;i++) 
{   
    for(int j=i+1;j<number;j++) 
    {     
        if(ci[i]<ci[j])   
        {       
            int temp=ci[j];    
            ci[j]=ci[i];   
            ci[i]=temp; 
        }    
    }   
}
System.out.print("學生\t");
for(int i=0;i<courses;i++)   
{    
    System.out.print(coursesname[i]+"\t"); 
}    System.out.print("總分\t"); 
System.out.print("平均分\t");  
System.out.print("排行榜");
System.out.print("\n");
int[]  temp=new int[number];  
for(int i=0;i<temp.length;i++)  
{   
    for(int j=0;j<scoreSum.length;j++)  
    {      
        if(ci[i]==scoreSum[j])  
        {    
            temp[i]=j;    
        }   
    } 
}

for(int i=0;i<number;i++)  
{    
    System.out.print(name[temp[i]]+"\t");  
    for(int j=0;j<courses;j++) 
    {    
        System.out.print(score[temp[i]][j]+"\t");   
    }   
    System.out.print(scoreSum[temp[i]]+"\t");     
    System.out.print((scoreSum[temp[i]]/courses)+"\t");   
    System.out.print("第"+(i+1)+"名");
    System.out.print("\n"); 
}  
    }  
} 

·運行過程:
(1)按照步驟,先輸入學生人數,課程門數,再依次輸入每個學生的姓名,每門課程的成績

(2)輸入所有的數據之后,運行的結果如下:

實驗的PSP(Personal Software Process)時間:

步驟 耗時 百分比
需求分析 1h 20%
設計 1h 20%
代碼實現 2h 40%
測試 95min 15%
分析總結 15min 5%

實驗總結和心得體會

這次的實驗題目一開始我覺得很難,怎么實現一個學生成績管理系統呢?我仔細分析了一下這個實驗題目,發現實際上就是要求我們用所學的知識,分別去解決幾個方面的問題。我的實驗設計包括了多名學生名字的輸入、存儲、以及各項成績的輸入存儲,最后計算各個學生的平均分和總分,在此基礎上又加上了排序的內容將學生成績進行了一個排名。這么一分析,我覺得其實這些內容其實並不難,在我現有的能力基礎之上都可以解決。
總的來說,這次實驗的解題思路還是比較清晰的,並沒有碰到什么大的問題。但是我覺得我的實驗設計還可以進一步提高,比如增加一些查找、刪改之類的新功能,甚至還能將程序做的更加人性化。不管怎么樣,只有自己不斷嘗試新的東西,才能不斷提高自己。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM