数组反转:
首先将0号位的数字与最后一位数字交换,其次将1号位的数字与倒数第二位的数字交换。以此类推,直至中间两个数字完成交换,其中交换次数位数组长度的一半。
代码如下:
#include<stdio.h>
//数组反转
void Reverse(int arr[],int len)
{
int tmp;
for(int i = 0 ; i < len / 2 ; i++)//只需要调换一半的次数
{
tmp = arr[i];
arr[i] = arr[len-i-1];
arr[len-i-1] = tmp;
}
}
void Show(int arr[],int len)
{
for(int i = 0 ; i < len ; i++)
{
printf("%d ",arr[i]);
}
printf("\n");
}
int main()
{
int arr[] = {1,2,3,4,5,6,7,8,9,10,11,12};
Reverse(arr,sizeof(arr)/sizeof(arr[0]));//sizeof求数组长度
Show(arr,sizeof(arr)/sizeof(arr[0]));
return 0;
}码片