學生姓名的讀取與輸出——Java令牌化的使用

//編寫一個程序,讀取學生的姓和名,然後再讀取五個測驗分數。該程序應輸出學生的姓和名、五個測驗分數以及平均測驗分數。

輸入:包含學生的姓、名和五個測驗分數的文件
輸出:學生的姓、名、和五個測驗分數保存到文件中。

//讀取輸入行並將其令牌化
  獲取學生的姓、名和五個測驗分數
  輸出學生的姓、名和五個測驗分數
  計算平均測驗分數
  輸出平均測驗分數(以固定小數格式(帶有兩位小數位))

import java.io.*;
import java.text.DecimalFormat;
import java.util.StringTokenizer;

// Program to calculate average test score

public class StudentGrade {
	public static void main(String[] args) throws IOException{
		//Declare and initialize variable
		double test1,test2,test3,test4,test5;
		double average;
		String firstName;
		String lastName;
		StringTokenizer tokenizer;
		BufferedReader inFile =new BufferedReader(new FileReader("a:\\test.txt"));//輸入文件路徑
		
		PrintWriter outFile =new PrintWriter (new FileWriter ("a:test1.txt"));    //輸出文件路徑
		
		DecimalFormat twoDecimal=new DecimalFormat("0.00");
		
		tokenizer=new StringTokenizer(inFile.readLine());
		firstName =tokenizer.nextToken();
		lastName=tokenizer.nextToken();
		
		outFile.println("Student Name: "+firstName+"  "+lastName);
		
		//Step8 - Retrieve five test scores
		test1=Double.parseDouble(tokenizer.nextToken());
		test2=Double.parseDouble(tokenizer.nextToken());
		test3=Double.parseDouble(tokenizer.nextToken());
		test4=Double.parseDouble(tokenizer.nextToken());
		test5=Double.parseDouble(tokenizer.nextToken());
		
		outFile.println("Test scores: "+
		twoDecimal.format(test1)+"  "+twoDecimal.format(test2)+"  "+
				twoDecimal.format(test3)+"  "+twoDecimal.format(test4)+"  "+
		twoDecimal.format(test5));
		average=(test1+test2+test3+test4+test5)/5.0;
		outFile.println("Average test score : "+twoDecimal.format(average));
		outFile.close();			//關閉文件很重要
	}

}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章