将数组中的数逆序存放
时间: 2023-10-25 14:09:52 浏览: 61
好的,这个问题很简单。以下是将一个数组中的数逆序存放的 C++ 代码示例:
```cpp
#include <iostream>
using namespace std;
int main() {
int arr[5] = {1, 2, 3, 4, 5};
int n = sizeof(arr) / sizeof(arr[0]);
for (int i = 0; i < n / 2; i++) {
int temp = arr[i];
arr[i] = arr[n - i - 1];
arr[n - i - 1] = temp;
}
for (int i = 0; i < n; i++) {
cout << arr[i] << " ";
}
return 0;
}
```
这个程序首先定义了一个包含 5 个元素的整数数组,然后计算数组的长度。
接下来,使用一个 for 循环将数组中的元素逆序存放。具体来说,将第一个元素和最后一个元素交换,然后将第二个元素和倒数第二个元素交换,以此类推,直到中间位置。
最后,再使用一个 for 循环输出逆序后的数组元素。
希望这个答案能够帮助到你!
相关问题
数组中元素逆序存放c语言
以下是两种C语言中数组元素逆序存放的例子:
1. 使用for循环逆序存放数组元素
```c
#include <stdio.h>
#define N 5
int main(){
int a[N], i, temp;
printf("请输入一个数组:");
for (i = 0; i < N; i++) {
scanf_s("%d", &a[i]);
}
printf("正序存放的数组:");
for (i = 0; i < N; i++) {
printf("%d ", a[i]);
}
for (i = 0; i < N / 2; i++) {
temp = a[i];
a[i] = a[N - 1 - i];
a[N - 1 - i] = temp;
}
printf("\n");
printf("逆序存放的数组:");
for (i = 0; i < N; i++) {
printf("%d ", a[i]);
}
return 0;
}
```
2. 使用while循环逆序存放数组元素
```c
void reverseArray(int *arr, int length) {
int left = 0;
int right = length - 1;
while (left < right) {
int temp = arr[left];
arr[left] = arr[right];
arr[right] = temp;
left++;
right--;
}
}
```
将数组中的数逆序存放不用指针
好的,我们可以使用下标的方式来操作数组进行逆序存放。具体的做法是使用一个循环,将数组中的第 i 个元素和第 n-i-1 个元素交换,其中 n 是数组的长度。下面是使用 C++ 语言实现这个操作的代码示例:
```cpp
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;
}
}
```
这个函数的参数是一个整数数组 `arr` 和数组的长度 `n`,它会将数组中的数逆序存放。在函数内部,我们使用一个循环遍历数组的前一半,每次将数组中的第 i 个元素和第 n-i-1 个元素交换,直到遍历完数组的前一半为止。
注意,这个函数的时间复杂度是 O(n),空间复杂度是 O(1)。