Gia sư Cần Thơ, Dạy Kèm Cần Thơ

VỮNG TIN - TIẾP BƯỚC - THÀNH CÔNG


Xóa các phần tử trùng trong mảng 1 chiều

Share
avatar
admin
Admin
Admin

Tổng số bài gửi : 1207
Points : 3010
Join date : 11/11/2009
Age : 36
Đến từ : Cần Thơ

Xóa các phần tử trùng trong mảng 1 chiều

Bài gửi  admin on Fri May 27, 2011 7:43 am

Xóa các phần tử trùng trong mảng 1 chiều
Code:
#include<stdio.h>
#include<conio.h>
void Nhap(int a[],int N){
   int i;
   for (i=0;i<N;i++){
      printf("Nhap so thu %d",i);
      scanf("%d",&a[i]);
   }
}
void Xuat(int a[],int N){
   int i;
   for (i=0;i<N;i++)
      printf("%d ",a[i]);
   printf("\n");
}
void Sapxep(int a[],int N){
   int i,j,t;
   for (i=0;i<N-1;i++)
      for (j=i+1;j<N;j++)
         if (a[i]>a[j]){
            t=a[i];
            a[i]=a[j];
            a[j]=t;
         }
}
void Xoatrung(int a[],int *N){
   int i,j,k;
   for (i=0;i<(*N)-1;i++){
    j=i+1;
    while (j<*N)
      if (a[i]==a[j]){
         for (k=j;k<(*N)-1;k++) a[k]=a[k+1];
         *N=(*N)-1;
      }
      else j=j+1;
   }
}
void main(){
   int a[50], N;
   clrscr();
   printf("Mang co bao nhieu phan tu ? ");scanf("%d",&N);
   Nhap(a,N);
   printf("Mang vua nhap:\n");
   Xuat(a,N);
   Xoatrung(a,&N);
   printf("Mang sau khi xoa phan tu trung nhau:\n");
   Xuat(a,N);
   Sapxep(a,N);
   printf("Mang sau khi sap xep\n");
   Xuat(a,N);
   getch();
}

    Hôm nay: Tue Oct 17, 2017 9:55 pm