C语言实现将一个数组中的奇数和偶数分开放在一

在一个数组中的元素大多奇数和偶数是混在一起的,而将数组中元素奇数和偶数分开存放则是我们要解决的问题。

将奇数和偶数分开存放然后打印出来的思路是先创建两个空间,将奇数和偶数分别存放起来,然后再将他们又存进原数组,最后将数组元素循环打印就完成了奇数和偶数的分别存放。

C语言实现将一个数组中的奇数和偶数分开放在一起

#include<stdio.h> int main() { int arr[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; int i = 0; int j = 0; int k = 0; int sz = sizeof(arr) / sizeof(arr[0]); int arr2[10] = { 0 }; int arr3[10] = { 0 }; while (i < sz) { if (arr[i] % 2 == 1) { arr2[j] = arr[i]; j++; i++; } else { arr3[k] = arr[i]; k++; i++; } } i = 0; j --; k --; while (j != -1) { arr[i] = arr2[j]; j--; i++; } while (k != -1) { arr[i] = arr3[k]; i++; k--; } for (i = 0; i < sz; i++) { printf("%d ", arr[i]); } return 0; }

运行如下:

C语言实现将一个数组中的奇数和偶数分开放在一起

Linux公社的RSS地址https://www.linuxidc.com/rssFeed.aspx

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/3336a7768744a362779417b93c848149.html