用c语言实现一个函数来翻转给定的一维整数数组?
时间: 2024-10-22 08:05:39 浏览: 24
C语言面试题总结汇总经典.pdf
在C语言中,你可以使用两个指针,一个指向数组的开始,另一个指向结束,然后交换它们所指的元素并逐次向中间移动,直到两个指针相遇或交错。这是一个简单的示例,假设有一个名为`reverseArray`的函数:
```c
#include <stdio.h>
void reverseArray(int arr[], int start, int end) {
while (start < end) {
// 交换arr[start]和arr[end]
int temp = arr[start];
arr[start] = arr[end];
arr[end] = temp;
// 移动指针
start++;
end--;
}
}
int main() {
int array[] = {1, 2, 3, 4, 5};
int size = sizeof(array) / sizeof(array[0]);
printf("原始数组: ");
for (int i = 0; i < size; i++) {
printf("%d ", array[i]);
}
reverseArray(array, 0, size - 1); // 调用反转函数
printf("\n反转后的数组: ");
for (int i = 0; i < size; i++) {
printf("%d ", array[i]);
}
return 0;
}
```
在这个例子中,`reverseArray`函数接受一个数组、一个起始索引和一个结束索引作为参数。在`main`函数里,我们首先打印原数组,然后调用这个函数,最后再次打印反转后的数组。
阅读全文