将数组a中n个整数按相反顺序存放,要求用指针方法处理
时间: 2025-01-25 12:09:25 浏览: 26
在C/C++中,如果想要将数组a中的n个整数按相反顺序存放,可以使用两个指针,一个指向数组的开始,另一个指向结束。然后交换它们指向的元素,每次移动指针直到相遇。下面是详细的步骤:
#include <stdio.h>
void reverseArray(int* start, int* end) { // 反转区间内元素
while (start < end) {
// 交换两个指针所指元素
int temp = *start;
*start = *end;
*end = temp;
// 移动指针
start++;
end--;
}
}
int main() {
int n;
printf("请输入数组长度n:");
scanf("%d", &n);
int a[n]; // 假设已经初始化了数组
printf("请输入数组元素:\n");
for (int i = 0; i < n; i++) {
scanf("%d", &a[i]);
}
int* arrStart = a; // 指向数组起始位置
int* arrEnd = arrStart + n - 1; // 指向数组末尾
reverseArray(arrStart, arrEnd); // 反转数组
printf("反转后的数组为:\n");
for (int i = 0; i < n; i++) {
printf("%d ", a[i]); // 打印数组元素
}
return 0;
}
相关推荐


















