Nội dung chính
Bài tập C: Trộn hai mảng thành một mảng trong C
Đề bài: Viết chương trình C để trộn hai mảng thành một mẩng duy nhất.
Bài tập C này có nhiều cách gọi: trộn hai mảng, nối hai mảng, ghép hai mảng hay cộng hai mảng thành một mảng trong C.
Lời giải
Dưới đây là chương trình C để giải bài tập trộn mảng trong C:
#include <stdio.h> int main() { int even[5] = {0, 2, 4, 6, 8}; int odd[6] = {1, 3, 5, 7, 9, 11}; int i, index; int eSize = 5; int oSize = 6; // khoi tao mang moi int arr[eSize + oSize]; index = 0; // them mang even vao mang arr for(i = 0; i < eSize; i++) { arr[index] = even[i]; index++; } // them mang odd vao mang arr for(i = 0; i < oSize; i++) { arr[index] = odd[i]; index++; } printf("Tron hai mang thanh mot mang:\n\n"); printf("\nMang chan: "); for(i = 0; i < eSize; i++) printf(" %d", even[i]); printf("\nMang le: "); for(i = 0; i < oSize; i++) printf(" %d", odd[i]); printf("\nMang sau khi tron: "); for(i = 0; i < 10; i++) printf(" %d", arr[i]); return 0; }
Chạy chương trình C trên cho kết quả như sau: