Trang ChínhTrang Chính  CalendarCalendar  Trợ giúpTrợ giúp  Tìm kiếmTìm kiếm  Thành viênThành viên  NhómNhóm  Đăng kýĐăng ký  Đăng NhậpĐăng Nhập  

Share | 
 

 Xóa phần tử khỏi mảng 1 chiều_theo giá trị

Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down 
Tác giảThông điệp
Tboy
Cá voi
Cá voi
avatar


Nam Tổng số bài gửi : 178
Cảm ơn : 413
Danh vọng : 4
Join date : 03/01/2011
Age : 26
Đến từ : TPHCM

Bài gửiTiêu đề: Xóa phần tử khỏi mảng 1 chiều_theo giá trị   Wed Jan 19, 2011 7:28 pm

Wed Jan 19, 2011 7:28 pm » Xóa phần tử khỏi mảng 1 chiều_theo giá trị
Code:
#include <stdio.h>
#include <conio.h>
#define Max 10000
void Copymang(int A[],int B[],int N);
void Nhapmang(int A[],int N);
void Xuatmang(int A[],int N);
void Xoavitri(int B[],int &N,int K);
int Timvitri(int B[],int N,int X); //tim vi tri phan tu mang gia tri X
bool Kiemtragiatri(int B[],int N,int X); //kiem tra X co la gia tri cua phan tu mang ko
void main()
{
   int a[Max],b[Max],n,x,i=0;
   do
   {
      printf("Nhap vao so phan tu mang (0<=n<=%d):  ",Max);
      scanf("%d",&n);
   }while(n<1||n>Max);
   Nhapmang(a,n);
   Copymang(a,b,n);
   printf("Cac phan tu vua nhap: ");
   Xuatmang(a,n);
   do
   {
      printf("\nNhap gia tri can xoa: ");
      scanf("%d",&x);
   }while(Kiemtragiatri(b,n,x)!=true);
   while(Kiemtragiatri(b,n,x)==true)
   {
      Xoavitri(b,n,Timvitri(b,n,x));
      i++; //dem so phan tu da xoa
   }
   printf("Sau khi xoa: ");
   Xuatmang(b,n);
   printf("\nMang ban dau la: ");
   Xuatmang(a,n+i);
   getch();
}
void Nhapmang(int A[],int N)
{
   for(int i=0;i<N;i++)
   {
      printf("a[%d]= ",i+1);
      scanf("%d",&A[i]);
   }
}
void Xuatmang(int A[],int N)
{
   for(int i=0;i<N;i++)
      printf("%d ",A[i]);
}
void Copymang(int A[],int B[],int N)
{
   for(int i=0;i<N;i++)
      B[i]=A[i];
}
//Ham xoa phan tu mang theo vi tri cua phan tu
void Xoavitri(int B[],int &N,int K)
{
   for(int i=K;i<N;i++)
      B[i]=B[i+1];
   N--;
}
int Timvitri(int B[],int N,int X)
{
   for(int i=0;i<N;i++)
      if(B[i]==X)
         return i;
}
bool Kiemtragiatri(int B[],int N,int X)
{
   for (int i=0;i<N;i++)
      if(B[i]==X)
         return true;
   return false;
}



Tboy

Về Đầu Trang Go down
Xem lý lịch thành viên http://taplaptrinh.forumvi.com
 

Xóa phần tử khỏi mảng 1 chiều_theo giá trị

Xem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang 
Trang 1 trong tổng số 1 trang

Permissions in this forum:Bạn không có quyền trả lời bài viết
 :: Cơ sở lập trình 1 :: Bài tập khác-