假定一个文本文件中包含未指定个数的分数,用空格分开。编写一个java程序,提示用 户输入文件名称,然后从文件中读入分数,并且显示它们的和以及平均值。
时间: 2024-03-02 09:51:16 浏览: 17
好的,根据您的要求,我为您编写了一个Java程序,用于从文件中读取分数并计算它们的和和平均值。以下是代码:
```java
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
public class CalculateScores {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入文件名:");
String fileName = scanner.nextLine();
scanner.close();
File file = new File(fileName);
double sum = 0;
int count = 0;
try {
Scanner fileScanner = new Scanner(file);
while (fileScanner.hasNextDouble()) {
sum += fileScanner.nextDouble();
count++;
}
fileScanner.close();
} catch (FileNotFoundException e) {
System.out.println("文件未找到!");
return;
}
double average = sum / count;
System.out.println("分数总和为:" + sum);
System.out.println("平均分为:" + average);
}
}
```
在上面的代码中,我们首先使用Scanner获取用户输入的文件名,然后创建一个File对象来打开该文件。接着,我们使用一个while循环来读取文件中的分数,累加它们的和并计算分数的个数。最后,我们使用这些数值来计算分数的平均值,并将结果输出。
需要注意的是,在读取文件时,我们使用了hasNextDouble()方法来判断文件中是否还有分数可以读取。如果该方法返回false,则意味着文件中已经没有分数可以读取了,循环将会结束。
希望这个程序能够满足您的需求!