一、Python实现
Python提供了简洁的内置函数和切片操作,可快速实现数组逆序。
方法1:使用`reverse()`方法
```python
输入数组长度
n = int(input("请输入数组长度: "))
输入数组元素
array = list(map(int, input("请输入数组元素,用空格分隔: ").split()))
逆序排列
array.reverse()
输出结果
print("逆序后的数组:", array)
```
方法2:使用切片操作
```python
输入数组元素
array = list(map(int, input("请输入数组元素,用空格分隔: ").split()))
逆序排列(切片操作)
reversed_array = array[::-1]
输出结果
print("逆序后的数组:", reversed_array)
```
二、C语言实现
C语言需手动交换数组元素,通常使用指针或循环实现。
方法1:使用循环交换元素
```c
include
void reverseArray(int arr[], int n) {
for (int i = 0; i < n / 2; i++) {
int temp = arr[i];
arr[i] = arr[n - i - 1];
arr[n - i - 1] = temp;
}
}
int main() {
int n, i;
printf("请输入数组长度: ");
scanf("%d", &n);
int arr[n];
printf("请输入 %d 个整数: ", n);
for (i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
reverseArray(arr, n);
printf("逆序后的数组: ");
for (i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
方法2:使用指针交换
```c
include
void reverseArray(int *arr, int n) {
int *start = arr;
int *end = arr + n - 1;
while (start < end) {
int temp = *start;
*start = *end;
*end = temp;
start++;
end--;
}
}
int main() {
int n, i;
printf("请输入数组长度: ");
scanf("%d", &n);
int arr[n];
printf("请输入 %d 个整数: ", n);
for (i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
reverseArray(arr, n);
printf("逆序后的数组: ");
for (i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
三、Java实现
Java中可以使用`Arrays.sort()`方法配合自定义比较器实现逆序排序。
```java
import java.util.Arrays;
import java.util.Collections;
import java.util.Scanner;
public class ReverseArray {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// 输入数组长度
System.out.print("请输入数组长度: ");
int n = scanner.nextInt();
int[] array = new int[n];
System.out.println("请输入数组元素,用空格分隔: ");
for (int i = 0; i < n; i++) {
array[i] = scanner.nextInt();
}
// 使用Arrays.sort()逆序排序
Arrays.sort(array, Collections.reverseOrder());
// 输出结果
System.out.println("逆序后的数组: " + Arrays.toString(array));
scanner.close();
}
}
```
总结
Python:推荐使用切片操作或内置函数,代码简洁且易读。
C语言:需手动交换元素,推荐使用指针或循环优化效率。
Java:利用`Arrays.sort()`方法,通过`Collections.reverseOrder()`实现逆序。
根据具体需求选择合适的语言实现即可。