Maison > Article > développement back-end > Comment fusionner deux tableaux en langage C ?
Prenez deux tableaux en entrée, essayez de fusionner ou de concaténer les deux tableaux et stockez le résultat dans le troisième tableau.
La logique de fusion de deux tableaux est la suivante- p>
J=0,k=0 for(i=0;i<o;i++) {// merging two arrays if(a[j]<=b[k]){ c[i]=a[j]; j++; } else { c[i]=b[k]; k++; } }
Le programme ci-dessous montre comment fusionner deux tableaux en langage de programmation C-
#include<stdio.h> #include<stdlib.h> int main(){ int a[10],b[10],c[20],m,n,o,i,j,k,temp; printf("Enter size of Array1</p><p>"); scanf("%d",&n); printf("Enter size of Array2</p><p>"); scanf("%d",&m); o=m+n; //size of third array printf("Enter Elements of Array1</p><p>"); for(i=0;i<n;i++){ scanf("%d",&a[i]); } printf("Enter Elements of Array2</p><p>"); for(i=0;i<m;i++){ scanf("%d",&b[i]); } //sorting first array for(i=0;i<n;i++){ for(j=0;j<n-1-i;j++){ if(a[j]>a[j+1]){ temp=a[j]; a[j]=a[j+1]; a[j+1]=temp; } } } //sorting second array for(i=0;i<m;i++){ for(j=0;j<m-1-i;j++){ if(b[j]>b[j+1]){ temp=b[j]; b[j]=b[j+1]; b[j+1]=temp; } } } printf("Elements of Array1</p><p>"); for(i=0;i<n;i++){ printf("a[%d]=%d</p><p>",i,a[i]); } printf("Elements of Array2</p><p>"); for(i=0;i<m;i++){ printf("b[%d]=%d</p><p>",i,b[i]); } j=0; k=0; for(i=0;i<o;i++){ // merging two arrays if(a[j]<=b[k]){ c[i]=a[j]; j++; } else{ c[i]=b[k]; k++; } } printf("Merged array is :</p><p>"); for(i=0;i<o;i++){ printf("c[%d]=%d</p><p>",i,c[i]); } }
Lorsque le programme ci-dessus est exécuté, il produit le résultat suivant −
Enter Elements of Array1 1 2 3 4 Enter Elements of Array2 6 8 3 Elements of Array1 a[0]=1 a[1]=2 a[2]=3 a[3]=4 Elements of Array2 b[0]=3 b[1]=6 b[2]=8 Merged array is: c[0]=1 c[1]=2 c[2]=3 c[3]=3 c[4]=4 c[5]=6 c[6]=8
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!