Với link rút gọn dạng bbmkts.com này, trường hợp có nút lấy mã như sau Mô tả hình ảnh nếu lấy mã mà mã báo sai, thì điền mã TrafficSEO2025 để vượt, các trường hợp khác đọc kỹ hướng dẫn trong link để vượt
Với link rút gọn dạng yeumoney.com này, nhớ nút lấy mã là màu ĐỎ Mô tả hình ảnh ở cuối trang, không phải nút màu xanh. Nếu không tìm thấy trang trên google thì nhấn nút đổi nhiệm vụ nhé

Ví dụ mảng (hay dãy số) ban đầu có các phần tử là: 1,2,3,4,5,6 nếu như đảo ngược lại dãy số trên ta sẽ có: 6,5,4,3,2,1.

Để thực hiện đảo ngược mảng arr[n] có n phần tử, ta cần thực hiện 2 bước sau đây:

  • Bước đầu tiên: Khởi tạo chỉ mục bắt đầu và kết thúc đó là: start = 0, end = n-1
  • Bước thứ hai: Trong vòng lặp, hoán đổi arr[start] với arr[end] và thay đổi start và end như sau: start = start +1, end = end – 1

Chương trình đảo ngược mảng trong C

#include <stdio.h>
int main(){
    //so luong phan tu cua mang
    int n = 6;
    //khai bao start = 0;
    int start = 0;
    //khao bao end = n - 1
    int end = n - 1;
    //khai bao mang
    int arr[6] = {1,2,3,4,5,6};
    
    //hien thi mang ban dau
    printf("MANG BAN DAU\n");
    for(int i = 0; i < n; i++){
        printf("%d \t",arr[i]);
    }
    
    //trong khi start < end thuc hien dao nguoc phan tu
    while (start < end)
    {
        //hoan vi phan tu tai vi tri start cho phan tu tai vi tri end
        int temp = arr[start];
        arr[start] = arr[end];
        arr[end] = temp;
        //tang start
        start++;
        //giam end
        end--;
    }
    
    //hien thi mang duoc dao nguoc
    printf("\n\nMANG DUOC DAO NGUOC\n");
    for(int i = 0; i < n; i++){
        printf("%d \t",arr[i]);
    }
}

Đảo ngược mảng trong C – viết dạng hàm

Hàm void DaoNguoc(int arr[], int start, int enddưới đây nhận vào int arr[] là mảng cần đảo ngược, int start là biến bắt đầu và int end là biến kết thúc để thực hiện cho việc kiểm tra giá trị phần tử và hoán vị chúng

#include <stdio.h>
void DaoNguoc(int arr[], int start, int end){
    //trong khi start < end thuc hien dao nguoc phan tu
    while (start < end)
    {
        //hoan vi phan tu tai vi tri start cho phan tu tai vi tri end
        int temp = arr[start];
        arr[start] = arr[end];
        arr[end] = temp;
        //tang start
        start++;
        //giam end
        end--;
    }
}
int main(){
    //so luong phan tu cua mang
    int n = 6;
    //khai bao start = 0;
    int start = 0;
    //khao bao end = n - 1
    int end = n - 1;
    //khai bao mang
    int arr[6] = {1,2,3,4,5,6};
    
    //hien thi mang ban dau
    printf("MANG BAN DAU\n");
    for(int i = 0; i < n; i++){
        printf("%d \t",arr[i]);
    }
    
    //goi ham dao nguoc
    DaoNguoc(arr,start,end);
    
    //hien thi mang duoc dao nguoc
    printf("\n\nMANG DUOC DAO NGUOC\n");
    for(int i = 0; i < n; i++){
        printf("%d \t",arr[i]);
    }
}

By alaza7

Leave a Reply

Your email address will not be published. Required fields are marked *