函数Reverse实现将一个含有n个元素的数组逆置,即第1个元素和第n个元素交换,第2个元素和第n-1个元素交换,依此类推......。
时间: 2024-03-12 15:50:31 浏览: 52
好的,这是一个很简单的问题,下面是函数的实现代码:
```c
void Reverse(int a[], int n){
int tmp;
for(int i=0; i<n/2; i++){
tmp = a[i];
a[i] = a[n-i-1];
a[n-i-1] = tmp;
}
}
```
这个函数使用了一个循环,将数组的前半部分和后半部分进行交换,以实现数组的反转。需要注意的是,循环的次数应该是数组长度的一半,否则会导致数组交换两次后又还原成原来的数组。
相关问题
函数Reverse实现将一个含有n个元素的数组逆置,即第1个元素和第n个元素交换,第2个元素和第n-1个元素交换,依此类推......。 函数接口定义: void Reverse ( int a[], int n); 其中 a 和 n 都是用户传入的参数。 a为整型数组,n为数组a 中元素的个数,n的值不超过100的范围。
好的,这是一个很简单的问题,下面是函数的实现代码:
```c
void Reverse(int a[], int n){
int tmp;
for(int i=0; i<n/2; i++){
tmp = a[i];
a[i] = a[n-i-1];
a[n-i-1] = tmp;
}
}
```
这个函数使用了一个循环,将数组的前半部分和后半部分进行交换,以实现数组的反转。需要注意的是,循环的次数应该是数组长度的一半,否则会导致数组交换两次后又还原成原来的数组。
编写函数,实现任何整形数组元素的逆置。在主函数输入10个数字后调用该函数,完成10个数组元素的逆置。用c语言实现
以下是C语言实现的函数:
```c
void reverse(int arr[], int len) {
int i, temp;
for (i = 0; i < len / 2; i++) {
temp = arr[i];
arr[i] = arr[len - i - 1];
arr[len - i - 1] = temp;
}
}
```
该函数接受两个参数,第一个参数是整型数组,第二个参数是数组的长度。函数将数组中的元素逆置,即将第一个元素与最后一个元素交换,第二个元素与倒数第二个元素交换,以此类推。
以下是在主函数中调用该函数完成数组逆置的例子:
```c
#include <stdio.h>
void reverse(int arr[], int len);
int main() {
int arr[10], i;
printf("输入10个数字:\n");
for (i = 0; i < 10; i++) {
scanf("%d", &arr[i]);
}
reverse(arr, 10);
printf("逆置后的数组:\n");
for (i = 0; i < 10; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
void reverse(int arr[], int len) {
int i, temp;
for (i = 0; i < len / 2; i++) {
temp = arr[i];
arr[i] = arr[len - i - 1];
arr[len - i - 1] = temp;
}
}
```
输入10个数字后,调用`reverse`函数将数组逆置,然后输出逆置后的数组。
阅读全文
相关推荐














