Exemple en langage C - Découpage et fusion de tableaux

Exemples en langage C

Diviser un tableau en deux tableaux, un pour les nombres impairs et un pour les nombres pairs :

Exemple

#include <stdio.h> int main() { int array[10] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9}; int even[10], odd[10]; int loop, e, d; e = d = 0; for(loop = 0; loop < 10; loop++) { if(array[loop]%2 == 0) { even[e] = array[loop]; e++; }else { odd[d] = array[loop]; d++; } } printf("Tableau d'origine ->"); for(loop = 0; loop < 10; loop++) printf(" %d", array[loop]); printf("\n pairs ->"); for(loop = 0; loop < e; loop++) printf(" %d", even[loop]); printf("\n impairs ->"); for(loop = 0; loop < d; loop++) printf(" %d", odd[loop]); return 0; }

Le résultat de sortie est:

 原始数组 ->  0 1 2 3 4 5 6 7 8 9
 偶数 ->  0 2 4 6 8
 奇数 ->  1 3 5 7 9

Fusionnez le tableau des nombres impairs et le tableau des nombres pairs en un seul tableau :

Exemple

#include <stdio.h> int main() { int array[10]; int even[5] = {0, 2, 4, 6, 8}; int odd[5] = {1, 3, 5, 7, 9}; int loop, index, e_len, o_len; e_len = o_len = 5; index = 0; for(loop = 0; loop < e_len; loop++) { array[index] = even[loop]; index++; } for(loop = 0; loop < o_len; loop++) { array[index] = odd[loop]; index++; } printf("\n pairs ->"); for(loop = 0; loop < e_len; loop++) printf(" %d", even[loop]); printf("\n impairs ->"); for(loop = 0; loop < o_len; loop++) printf(" %d", odd[loop]); printf("\n fusionné ->"); for(loop = 0; loop < 10; loop++) printf(" %d", array[loop]); return 0; }

Le résultat de sortie est:

偶数 ->  0 2 4 6 8
奇数  ->  1 3 5 7 9
合并后 ->  0 2 4 6 8 1 3 5 7 9

Exemples en langage C

autres extensions