用Java编写一个程序,可以生成n个100以内的正整数存入数组s,n由用户输入 (1)显示数组s[]的初始数据(2)输出这s[]的最大值和最小值(3)对s[]从大到小排序并输出排序后的结果(4)将s[]的内容复制到d[]中
时间: 2024-09-28 13:13:26 浏览: 52
将一个整数S随机拆分为N个在min~max之间的整数.txt
在Java中,你可以按照以下步骤编写这个程序:
```java
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
// (1)显示数组s[]的初始数据
System.out.println("请输入元素的数量(n):");
int n = input.nextInt();
int[] s = new int[n];
System.out.println("请输入" + n + "个100以内的正整数:");
for (int i = 0; i < n; i++) {
s[i] = input.nextInt();
System.out.print(s[i] + " ");
}
System.out.println("\n原始数组s[]的数据: " + Arrays.toString(s));
// (2)输出最大值和最小值
int max = Arrays.stream(s).max().getAsInt();
int min = Arrays.stream(s).min().getAsInt();
System.out.printf("最大值: %d, 最小值: %d\n", max, min);
// (3)对s[]从大到小排序并输出
Arrays.sort(s, Collections.reverseOrder());
System.out.println("数组s[]按从大到小排序: " + Arrays.toString(s));
// (4)复制s[]到d[]
int[] d = new int[n];
System.arraycopy(s, 0, d, 0, n);
System.out.println("数组d[]的内容: " + Arrays.toString(d));
}
}
```
在这个程序中,首先获取用户输入的元素数量n,然后读取n个数字存储在`s`数组中。接着计算并输出最大值和最小值,对`s`数组进行降序排序,并创建新数组`d`将`s`的内容复制过去。
阅读全文