//功能:编写函数fun将一个数组中的值按逆序存放,并在main()函数中输出。 例如:原来的顺序为8,6,5,4,1。要求改为:1,4,5,6,8。 请补充下列程序,使其输出正确结果。
时间: 2023-08-05 14:02:45 浏览: 387
下面是代码实现:
```c
#include <stdio.h>
void fun(int arr[], int n){
int i, j;
int temp;
for (i = 0, j = n - 1; i < j; i++, j--) {
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
int main(){
int arr[] = {8, 6, 5, 4, 1};
int n = sizeof(arr) / sizeof(arr[0]);
fun(arr, n);
for (int i = 0; i < n; i++){
printf("%d ", arr[i]);
}
return 0;
}
```
输出结果为:
```
1 4 5 6 8
```
在`fun`函数中,我们使用两个指针`i`和`j`分别指向数组的头尾,然后交换它们所指向的元素即可。最后在`main`函数中输出反转后的数组。
相关问题
:编写 fun 函数将一个数组中的值按逆序存放,并在 main 函数中输出。用c语言的函数调用
在C语言中,你可以创建一个名为`reverse_array`的函数来实现这个功能,该函数接受一个整型数组、数组的长度以及指向数组首元素的指针作为参数。以下是实现这一功能的示例:
```c
#include <stdio.h>
// 定义函数,接收数组、数组长度和指针
void reverse_array(int* arr, int length) {
int start = 0;
int end = length - 1; // 从两端开始交换
while (start < end) {
// 交换当前位置和结束位置的值
int temp = arr[start];
arr[start] = arr[end];
arr[end] = temp;
// 移动指针到下一个元素
start++;
end--;
}
}
int main() {
int my_array[] = {1, 2, 3, 4, 5};
int array_length = sizeof(my_array) / sizeof(my_array[0]);
// 反转数组
reverse_array(my_array, array_length);
// 输出反转后的数组
for (int i = 0; i < array_length; i++) {
printf("%d ", my_array[i]);
}
// 结束程序并换行
printf("\n");
return 0;
}
```
在这个例子中,`main`函数首先初始化了一个整数数组`my_array`,然后调用`reverse_array`函数来逆序数组。最后通过循环遍历数组并打印出结果。
编写函数fun将一个数组中的值按逆序存放,并在main 函数中输出
在编写一个函数 `fun` 来反转数组中的元素,可以采用多种编程语言实现。这里我们以 Python 为例,因为它简洁明了:
```python
def fun(arr):
# 使用列表切片操作将数组翻转
arr.reverse()
return arr
# 主函数 main
def main():
# 创建一个示例数组
test_array = [1, 2, 3, 4, 5]
# 调用 fun 函数并打印结果
reversed_array = fun(test_array)
print("原数组:", test_array)
print("逆序后的数组:", reversed_array)
# 执行 main 函数
if __name__ == "__main__":
main()
```
在这个例子中,`fun` 函数接受一个数组作为输入,通过 `arr.reverse()` 将其内部元素顺序颠倒,然后返回反转后的数组。主函数 `main` 中创建了一个测试数组,将其传递给 `fun` 并打印出原数组和逆序后的数组。
阅读全文
相关推荐

















