5人の生徒がおり、各生徒に3科目の成績があり、キーボードから以上のデータ(生徒番号、氏名、3科目の成績を含む)を入力し、平均成績を算出し、元のデータと算出した平均点数をディスクファイル「stud」に格納する.

1716 ワード

タイトル:5人の学生がいて、学生ごとに3科目の成績があって、キーボードから以上のデータ(学生番号、名前、3科目の成績を含む)を入力して、平均成績を計算して、元のデータと計算した平均点数をディスクファイル「stud」に保存します.
import java.io.*;
public class Prog50{
	//      
	String[] number = new String[5];
	String[] name = new String[5];
	float[][] grade = new float[5][3];
	float[] sum = new float[5];
	public static void main(String[] args) throws Exception{
		Prog50 stud = new Prog50();
		stud.input();
		stud.output();
	}
	//    、  、  
	void input() throws IOException{
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		//      
		boolean isRecord = true;
		while(isRecord){
			try{
			  for(int i=0;i<5;i++){
				  System.out.print("     :");
				  number[i] = br.readLine();
				  System.out.print("     :");
				  name[i] = br.readLine();
				  for(int j=0;j<3;j++){
					  System.out.print("    "+(j+1)+"    :");
					  grade[i][j] = Integer.parseInt(br.readLine());
				  }
				  System.out.println();
				  sum[i] = grade[i][0]+grade[i][1]+grade[i][2];
			  }
			    isRecord = false;
		    }catch(NumberFormatException e){
			     System.out.println("       !");
		  }
		}
	}
	//    
	void output() throws IOException{
		FileWriter fw = new FileWriter("E://java50//stud.txt");
		BufferedWriter bw = new BufferedWriter(fw);	
		bw.write("No.  "+"Name  "+"grade1  "+"grade2  "+"grade3  "+"average");
		bw.newLine();
		for(int i=0;i<5;i++){
		  bw.write(number[i]);
		  bw.write("  "+name[i]);
		  for(int j=0;j<3;j++)
		    bw.write("  "+grade[i][j]);
		  bw.write("  "+(sum[i]/5)); 
		  bw.newLine();
		}
		bw.close();
	}
}