Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menggabungkan dua tatasusunan dalam bahasa C?

Bagaimana untuk menggabungkan dua tatasusunan dalam bahasa C?

WBOY
WBOYke hadapan
2023-09-10 09:05:021542semak imbas

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++;
   }
}

Program

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]);
   }
}

Output

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!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam