要求:
输入一个整数数组,实现一个函数,来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分,所有偶数位于数组的后半部分。
?
思考,要想实现此功能,首先对函数数组进行遍历,从两头进行,一个从前向后查看数组元素是否为奇数,一个从后向前查看数组元素是否为偶数,如果前为偶,后为奇则进行调换!
程序如下:
?
/* **2.调整数组使奇数全部都位于偶数前面。 ** 题目: **输入一个整数数组,实现一个函数, **来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分, **所有偶数位于数组的后半部分。 */ #include#include void adjust_arr(int arr[], int size) { int temp; int i, j; /*将奇位数放在前,偶位数放在后*/ //if (size % 2 == 1) //{ // i = 1; j = size-1; //} //else //{ // i = 1; j = size - 2; //} //for (; i <= j; i += 2, j -= 2) //{ // temp = arr[i]; // arr[i] = arr[j]; // arr[j] = temp; //} /*将奇数放在前,偶数放在后*/ for (i = 0,j = size-1; i ?