Banner 02
Banner 01
Banner 03

Lập trình C | Chèn phần tử vào trong mảng

Cập nhật: 11/9/2020 | 11:47:38 AM

Viết chương trình in ra phần tử, sắp xếp trong mảng; thực hiện chèn phần tử nhập từ bàn phím

🔰 Bài toán:

Viết chương trình nhập từ bàn phím mảng có số phần tử không vượt quá 50:

  • In ra màn hình dãy số đã nhập

  • Đưa ra màn hình các số chẵn và vị trí số chẵn đó trong dãy

  • Sắp xếp dãy số theo giá trị các phần tử giảm dần.

  • Chèn số X vào dãy sao cho sau khi chèn gái trị các phần tử vẫn giảm dần (x nhập từ bàn phím)

📣 Lời giải:

#include<stdio.h>
#include<conio.h>

main()

    int a[50],i,j, n,tg,v,x;
    printf("Nhap vao so phan tu: "); //Nhap so phan tu khong qua 50
    scanf("%d", &n);
    for(i=0;i<n;i++)
    {
        scanf("%d",&a[i]);
    }
//hien thi ra man hinh day so vua nhap
    printf("Day so vua nhap la:");
    for(i=0;i<n;i++)
    {
        printf("%5d",a[i]);
    }
//In ra man hinh cac so chan va vi tri trong day
    printf("\nCac so chan trong day va vi tri trong day la:");
    for(i=0;i<n;i++)
    {
        if(a[i]%2==0)
        {
            printf("\nso %d dung thu %d trong day", a[i], i+1);
        }
    }
// sap xep day so theo gia tri cac phan tu giam dan
    for(i=0;i<n-1;i++)
    for(j=i+1;j<n;j++)
    {
        if(a[i]<a[j])
        {
            tg=a[i];
            a[i]=a[j];
            a[j]=tg;
        }
    }
    printf("\nDay so sau khi sap xep la:");
    for(i=0;i<n;i++)
    {
        printf("%5d",a[i]);
    }
//chen so x vao day sao cho sau khi chen gia tri cac phan tu van tang dan (x nhap tu ban phim)
    printf("\nNhap gia tri can chen X:"); 
    scanf("%d", &x);
    v=0; 
    i=0;
    while(a[i]>x)
    {    
        i++;
    } 
    v=i;    
    for(i=n-1;i>=v;i--)
    {
        a[i+1]=a[i];
    }
    a[v]=x;
    printf("\nDay so sau khi chen la:");
    for(i=0;i<n+1;i++)
    {
        printf("%5d", a[i]);
    }
    printf("\n===========================\n");
    printf("Casestudy24h chuc cac ban hoc tot! \n");
    getch();
}

Đối tác của chúng tôi