请用java编写一个程序,读入一组整数(不超过20个),并把它们保存在一个整形数组中。当用户输入0时,表示输入结束。输入数据后,程序将把这个数组中的值按逆序重新存放,并打印出来。
时间: 2024-09-08 16:02:47 浏览: 51
好的,这是一个简单的Java程序,它实现了你描述的功能:
```java
import java.util.Scanner;
public class ReverseArray {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int[] numbers = new int[20]; // 创建一个长度为20的整型数组
System.out.println("请输入一系列整数,直到输入0结束:");
for (int i = 0; i < numbers.length; ) {
System.out.print("请输入第" + (i + 1) + "个数字(0表示结束):");
int input = scanner.nextInt();
if (input == 0) break; // 如果输入0,则退出循环
numbers[i++] = input; // 存储输入的整数
}
// 逆序数组
for (int i = 0, j = numbers.length - 1; i < j; i++, j--) {
int temp = numbers[i];
numbers[i] = numbers[j];
numbers[j] = temp;
}
// 输出逆序后的数组
System.out.println("逆序后的数组为:");
for (int number : numbers) {
System.out.print(number + " ");
}
}
}
```
在这个程序中,首先我们通过Scanner类获取用户的输入,然后逐个添加到数组中,直到用户输入0为止。之后,我们使用双指针法(从两端开始互换元素)来实现数组的逆序。最后,遍历逆序后的数组并打印。
阅读全文