Chương trình để chia mảng trong C



Bài tập C: chia một mảng các số từ 0 tới 9 thành hai mảng chẵn và mảng lẻ

Để giải bài tập C này, chúng ta cần kiểm tra xem phần tử của mảng ban đầu là chẵn hay lẻ. Nếu là chẵn thì lưu giữ giá trị vào mảng chẵn (mảng even), nếu là lẻ thì lưu giữ vào mảng lẻ (mảng odd).

Chúng ta giải bài tập C trên với sự trợ giúp của vòng lặp và toán tử % trong C. Bạn cần lưu ý thêm một điều nữa là tổng kích cỡ của hai mảng chẵn và mảng lẻ bằng với mảng ban đầu

Chương trình C

Dưới đây là chương trình C để giải bài tập chia một mảng thành hai mảng: mảng chẵn và mảng lẻ trong C:

#include 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("Chia mot mang thanh hai mang:\n\n");   
   printf("Mang ban dau -> ");
   
   for(loop = 0; loop < 10; loop++)
      printf(" %d", array[loop]);
       
   printf("\nMang chan -> ");
   for(loop = 0; loop < e; loop++)
      printf(" %d", even[loop]);      printf("\nMang le -> ");
   for(loop = 0; loop < d; loop++)
      printf(" %d", odd[loop]);   
   
   return 0;
}

Biên dịch chương trình C trên sẽ cho kết quả:

Chia một mảng thành hai mảng trong C
bai-tap-mang-mot-chieu-trong-c.jsp