用两种方法从控制台输入10个双精度浮点数,并输出这它们的最大值和最小值
时间: 2024-03-10 16:47:24 浏览: 124
好的,第一个方法可以使用 Scanner 类来实现:
```java
import java.util.Scanner;
public class DoubleMinMax {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
double[] nums = new double[10];
for (int i = 0; i < 10; i++) {
System.out.print("请输入第" + (i+1) + "个双精度浮点数:");
nums[i] = input.nextDouble();
}
double max = nums[0], min = nums[0];
for (double num : nums) {
if (num > max) {
max = num;
}
if (num < min) {
min = num;
}
}
System.out.println("最大值为:" + max);
System.out.println("最小值为:" + min);
}
}
```
第二个方法可以使用 BufferedReader 和 InputStreamReader 类来实现:
```java
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class DoubleMinMax {
public static void main(String[] args) throws IOException {
BufferedReader input = new BufferedReader(new InputStreamReader(System.in));
double[] nums = new double[10];
for (int i = 0; i < 10; i++) {
System.out.print("请输入第" + (i+1) + "个双精度浮点数:");
nums[i] = Double.parseDouble(input.readLine());
}
double max = nums[0], min = nums[0];
for (double num : nums) {
if (num > max) {
max = num;
}
if (num < min) {
min = num;
}
}
System.out.println("最大值为:" + max);
System.out.println("最小值为:" + min);
}
}
```
注意第二个方法需要抛出 IOException 异常,而且需要使用 Double 类的 parseDouble 方法将字符串转换成双精度浮点数。
阅读全文