c語言 將一個數組中的奇數和偶數分開放在一起
阿新 • • 發佈:2018-11-05
在一個數組中的元素大多奇數和偶數是混在一起的,而將陣列中元素奇數和偶數分開存放則是我們要解決的問題。
將奇數和偶數分開存放然後打印出來的思路是先建立兩個空間,將奇數和偶數分別存放起來,然後再將他們又存進原陣列,最後將陣列元素迴圈列印就完成了奇數和偶數的分別存放。
#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]); } system("pause"); return 0; }