c语言中,编写函数fun,其定义为:void fun(int *a,int n) 功能是:将形参a所指数组中的前半部分元素和后半部分元素值对换。形参n中存放数组中数据的个数,若n为奇数,则中间的元素不动。例如,若a所指数组中的数据依次为:1、4、3、2、5、6、8、7、9,则调换后为:6、8、7、9、5、1、4、3、2。 main函数中定义10个长度的数组,输入n(n<=10)代表数组元素的具体个数,调用fun函数并输出结果。 输入样例1: 输入数组元素个数:9 输入数组元素:1 4 3 2 5 6 8 7 9 输出结果: 6 8 7 9 5 1 4 3 2 输入样例2: 输入数组元素个数:8 输入数组元素:2 3 5 4 8 7 6 1 输出结果: 8 7 6 1 2 3 5 4
时间: 2024-01-01 15:05:05 浏览: 290
C语言程序设计-请编一个函数void fun(int tt[M][N],int pp[N]),tt指向一个M
5星 · 资源好评率100%
下面是一个实现要求的 `fun` 函数的示例程序:
```c
#include <stdio.h>
void fun(int *a, int n) {
int i, j, t;
for (i = 0, j = n - 1; i < j; i++, j--) {
t = a[i];
a[i] = a[j];
a[j] = t;
}
}
int main() {
int a[10], n, i;
printf("输入数组元素个数:");
scanf("%d", &n);
printf("输入数组元素:");
for (i = 0; i < n; i++) {
scanf("%d", &a[i]);
}
fun(a, n);
printf("输出结果:");
for (i = 0; i < n; i++) {
printf("%d ", a[i]);
}
printf("\n");
return 0;
}
```
该程序首先定义了一个 `fun` 函数,该函数接受一个整型数组指针 `a` 和数组中元素个数 `n` 作为参数。函数中使用双指针法,将数组中前半部分和后半部分的元素逐个对换,直到指针相遇。如果数组元素个数 `n` 为奇数,中间的元素不需要对换。
在 `main` 函数中,首先读入数组元素个数 `n` 和数组元素。然后调用 `fun` 函数,将数组中前半部分和后半部分的元素对换。最后输出对换后的数组元素。
输入样例1:
```
输入数组元素个数:9
输入数组元素:1 4 3 2 5 6 8 7 9
输出结果:6 8 7 9 5 1 4 3 2
```
输入样例2:
```
输入数组元素个数:8
输入数组元素:2 3 5 4 8 7 6 1
输出结果:8 7 6 1 2 3 5 4
```
阅读全文