Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk menggabungkan dua tatasusunan dalam bahasa C?
Mengambil dua tatasusunan sebagai input, cuba gabungkan atau gabungkan dua tatasusunan dan simpan hasilnya dalam tatasusunan ketiga.
Logik menggabungkan dua tatasusunan adalah seperti yang ditunjukkan di bawah - 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++; } }
Atur cara yang diberikan di bawah menunjukkan cara menggunakan C Bahasa pengaturcaraan untuk menggabungkan dua tatasusunan -
#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]); } }
Apabila atur cara di atas dilaksanakan, ia menghasilkan hasil berikut−
rreee#🎜🎜Atas ialah kandungan terperinci Bagaimana untuk menggabungkan dua tatasusunan dalam bahasa C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!