Chương trình dưới đây thực hiện sắp xếp mảng tăng dần và giảm dần, được viết theo dạng hàm. Ngoài ra chương trình cũng viết luôn 2 hàm nhập và xuất mảng.

#include <stdio.h>
void Nhap(int number[], int n){
    for(int i = 0; i < n ; i++){
        printf("NHAP a[%d]: ",i);
        scanf("%d",&number[i]);
    }
}
void Xuat(int number[],int n){
    for(int i = 0; i < n ; i++){
        printf("%d \n",number[i]);
    }
}
void SapXepTang(int number[], int n){
    //khai bao bien trung gian de hoan vi
    int trunggian;
    //thuc hien thuat toan sap xep chon
    for(int i = 0; i < n - 1; i++){
        for(int j = i + 1; j < n; j ++){
            //neu tim thay phan tu be hon phan tu dang xet thi doi cho 2 phan tu do cho nhau
            if(number[i] > number[j]){
                //hoan vi 2 phan tu
                trunggian = number[i];
                number[i] = number[j];
                number[j] = trunggian;
            }
        }
    }
}
void SapXepGiam(int number[], int n){
    //khai bao bien trung gian de hoan vi
    int trunggian;
    //thuc hien thuat toan sap xep chon
    for(int i = 0; i < n - 1; i++){
        for(int j = i + 1; j < n; j ++){
            //neu tim thay phan tu lon hon phan tu dang xet thi doi cho 2 phan tu do cho nhau
            if(number[i] < number[j]){
                //hoan vi 2 phan tu
                trunggian = number[i];
                number[i] = number[j];
                number[j] = trunggian;
            }
        }
    }
}
int main(){
    //khai bao so luong phan tu
    int n;
    //nhap vao n
    printf("NHAP VAO N: ");
    scanf("%d",&n);
    //khai bao mang n phan tu
    int number[n];
    //goi ham nhap va xuat phan tu
    Nhap(number,n);
    printf("MANG SAU KHI NHAP\n");
    Xuat(number,n);
    //goi ham sap xep tang va hien thi mang sau khi sap xep tang
    SapXepTang(number,n);
    printf("MANG SAU KHI DUOC SAP XEP TANG DAN\n");
    Xuat(number,n);
    //goi ham sap xep giam va hien thi mang sau khi sap xep giam
    SapXepGiam(number,n);
    printf("MANG SAU KHI DUOC SAP XEP GIAM DAN\n");
    Xuat(number,n);
}

By alaza7

Leave a Reply

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