1.将数组A的内容和数组B中的内容进行交换。(数组一样大)
2.创建一个整形数组,完成对数组的操作
实现函数Init()初始化数组全为0
实现print()打印数组的每个元素
实现reverse()函数完成数组元素的逆置
//2.创建一个整形数组,完成对数组的操作
//
//实现函数Init()初始化数组全为0
//
//实现print()打印数组的每个元素
//
//实现reverse()函数完成数组元素的逆置
void Init(int arr[], int sz)
{int i = 0;for (i = 0; i < sz; i++){arr[i] = 0;}
}
void print(int arr[], int sz)
{int i = 0;for (i = 0; i < sz; i++){printf("%d ", arr[i]);}printf("%d\n");
}//用函数迭代解
//void reverse(int arr[], int sz)
//{
//
// int left = 0;
// int right = sz - 1;
// while (left < right)
// {
// int tmp = arr[left];
// arr[left] = arr[right];
// arr[right] = tmp;
// left++;
// right--;
// }
//}
//用递归函数解
void reverse(int arr[], int left, int right)
{if (left < right){int tmp = arr[left];arr[left] = arr[right];arr[right] = tmp;reverse(arr, left + 1, right - 1);}
}int main()
{int arr[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 };int sz = sizeof(arr) / sizeof(arr[0]);int left = 0;int right = sz - 1;print(arr, sz);//1 2 3 4 5 6 7 8 9 0reverse(arr, left,right);print(arr, sz);//0 9 8 7 6 5 4 3 2 1Init(arr, sz);print(arr, sz);//0 0 0 0 0 0 0 0 0 0 return 0;
}