1、使用Scanner类解析出“数学87分,物理76分,英语96分”的成绩,计算总成绩和平均成绩。
时间: 2023-12-30 22:03:32 浏览: 150
可以使用正则表达式来解析字符串中的数字部分。以下是一个示例代码:
```java
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class ScoreCalculator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String input = scanner.nextLine();
scanner.close();
Pattern pattern = Pattern.compile("(\\d+)");
Matcher matcher = pattern.matcher(input);
int mathScore = 0;
int physicsScore = 0;
int englishScore = 0;
if (matcher.find()) {
mathScore = Integer.parseInt(matcher.group());
}
if (matcher.find()) {
physicsScore = Integer.parseInt(matcher.group());
}
if (matcher.find()) {
englishScore = Integer.parseInt(matcher.group());
}
int totalScore = mathScore + physicsScore + englishScore;
double averageScore = (double) totalScore / 3;
System.out.println("Total score: " + totalScore);
System.out.println("Average score: " + averageScore);
}
}
```
这个程序首先读入一个字符串,然后使用正则表达式将其中的数字部分提取出来。接着分别计算三门课程的成绩总和,再计算平均成绩。最后输出结果。
阅读全文