Diễn Đàn Khoa học Máy tính - ĐH Công nghệ thông tin (ĐHQG TP HCM)
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.

Diễn Đàn Khoa học Máy tính - ĐH Công nghệ thông tin (ĐHQG TP HCM)

KHOA HỌC MÁY TÍNH-UIT
 
Trang ChínhTrang Chính  PortalPortal  Latest imagesLatest images  Tìm kiếmTìm kiếm  Đăng kýĐăng ký  Đăng NhậpĐăng Nhập  
Latest topics
» Hướng dẫn thao tác Số nguyên lớn!
Help Bài tập về chèn một số vào mảng !. I_icon_minitimeby peterdrew Thu 23 Jun 2011, 21:53

» Rèn luyện Đệ Quy với Bài tập này???
Help Bài tập về chèn một số vào mảng !. I_icon_minitimeby tandunglee Sun 12 Jun 2011, 09:25

» VietPon.com -Mạng giảm giá cao cấp của Nhật chính thức ra mắt
Help Bài tập về chèn một số vào mảng !. I_icon_minitimeby tuquynh Wed 18 May 2011, 09:10

» Một số bài hướng dẫn về Mảng!
Help Bài tập về chèn một số vào mảng !. I_icon_minitimeby Tesulakata Sat 16 Apr 2011, 13:48

» PHẢN XẠ NGẪU NHIÊN LIÊN TỤC-p2 Học tiếng Nhật mới
Help Bài tập về chèn một số vào mảng !. I_icon_minitimeby tuquynh Fri 07 Jan 2011, 17:36

» Khuyến học mừng năm mới 2011
Help Bài tập về chèn một số vào mảng !. I_icon_minitimeby tuquynh Fri 07 Jan 2011, 17:35

» Khai giảng khóa đàm thoại đặc biệt tại Top Globis
Help Bài tập về chèn một số vào mảng !. I_icon_minitimeby tuquynh Mon 11 Oct 2010, 20:31

» Học tiếng nhật miễn phí tại Top Globis
Help Bài tập về chèn một số vào mảng !. I_icon_minitimeby tuquynh Mon 11 Oct 2010, 20:31

» Học tiếng Nhật là niềm vui của bạn - Dạy tiếng Nhật là niềm tự hào của Top Globis.
Help Bài tập về chèn một số vào mảng !. I_icon_minitimeby tuquynh Mon 11 Oct 2010, 20:30

» Tài liệu học C++ làm game :D
Help Bài tập về chèn một số vào mảng !. I_icon_minitimeby peterdrew Fri 02 Jul 2010, 14:04


 

 Help Bài tập về chèn một số vào mảng !.

Go down 
2 posters
Tác giảThông điệp
mr.kieu
Thành viên chính thức
Thành viên chính thức



Tổng số bài gửi : 7
Join date : 26/02/2010

Help Bài tập về chèn một số vào mảng !. Empty
Bài gửiTiêu đề: Help Bài tập về chèn một số vào mảng !.   Help Bài tập về chèn một số vào mảng !. I_icon_minitimeWed 10 Mar 2010, 23:53

Đề bài là bạn hãy chèn vào mảng một số sao cho mảng đó vẫn tăng dần. Lưu ý, mình nhập vào một mảng bất kỳ, bạn phải sắp xếp nó trước. Mình làm rồi nhưng vẫn chưa được. Các bạn chỉ dùm mình sai ở đâu. Thanks. Đây là đoạn Code của mình:
Code:
# include <stdio.h>
# include <conio.h>
void nhapmang (int a[],int n);
void doicho (int *a,int *b);
void main()
{
   int i,j,a[25],n,x,p;
   printf("\nnhap n: ");
   scanf("%d",&n);
   nhapmang(a,n);
   for (i=0;i<n-1;i++)
      for (j=i+1;j<n;j++)
         if (a[i]>a[j])
            doicho( &a[i],&a[j]);
    for (i=0;i<n;i++)
      printf("%d ",a[i]);
   printf("\nnhap so x can chen: ");
   scanf("%d",&x);
   for (i=1;i<n;i++)
   {
      p=i-1;//xet cac phan tu nam phia truoc a[i]
   
      while ((p>=0)&&(a[p]>x))
         if (a[i]>=x)
      {
         a[p+1]=a[p];// doi a[p]>x sang ben phai
         p--;
         a[p+1]=x; // chen x vao vi tri p+1
         
      }
            
   }
         for (i=0;i<n;i++)
            printf("%d ",a[i]);
   getch();

}
void nhapmang(int a[],int n)
{
   int i;
   for (i=0;i<n;i++)
   {
   printf("\nphan tu thu a[%d] la: ",i);
   scanf("%d",&a[i]);
   }
}
void doicho(int *a,int *b)
{
   int tam;
   tam=*a;
   *a=*b;
   *b=tam;
}
Về Đầu Trang Go down
mr.kieu
Thành viên chính thức
Thành viên chính thức



Tổng số bài gửi : 7
Join date : 26/02/2010

Help Bài tập về chèn một số vào mảng !. Empty
Bài gửiTiêu đề: Re: Help Bài tập về chèn một số vào mảng !.   Help Bài tập về chèn một số vào mảng !. I_icon_minitimeThu 11 Mar 2010, 00:46

Với sự giúp đỡ của Thiendiep_uit, cuối cùng sau một hồi vật lộn, nhịn ăn nhịn uống (nói hơi quá tý hehe) trong vòng buổi tối bài tập đó cũng đã giải xong. Mời mọi người tham khảo và cho nhận xét nhé. Đây là code
Code:
# include <stdio.h>
# include <conio.h>
void nhapmang (int a[],int n);
void doicho (int *a,int *b);
void insert(int a[], int n, int x);
void main()
{
   int i,j,a[25],n,x,p;
   printf("\nnhap n: ");
   scanf("%d",&n);
   nhapmang(a,n);
   for (i=0;i<n-1;i++)
      for (j=i+1;j<n;j++)
         if (a[i]>a[j])
            doicho( &a[i],&a[j]);
    for (i=0;i<n;i++)
      printf("%d ",a[i]);
   printf("\nnhap so x can chen: ");
   scanf("%d",&x);
   insert(a,n,x);
   for (i=0;i<=n;i++)
      printf("%d ",a[i]);
            
   getch();

}
void nhapmang(int a[],int n)
{
   int i;
   for (i=0;i<n;i++)
   {
   printf("\nphan tu thu a[%d] la: ",i);
   scanf("%d",&a[i]);
   }
}
void doicho(int *a,int *b)
{
   int tam;
   tam=*a;
   *a=*b;
   *b=tam;
}
void insert(int a[], int n, int x)
{
   int i=n-1;
      while(i>=0 && a[i]>x)
      {
         a[i+1]=a[i];
         i--;
      }
         a[i+1]=x;
         n++;
}
Về Đầu Trang Go down
peterdrew
Vip
Vip
peterdrew


Tổng số bài gửi : 55
Join date : 01/03/2010
Age : 41
Đến từ : Weapon Institute

Help Bài tập về chèn một số vào mảng !. Empty
Bài gửiTiêu đề: Re: Help Bài tập về chèn một số vào mảng !.   Help Bài tập về chèn một số vào mảng !. I_icon_minitimeSun 16 May 2010, 00:15

Nhận xét: Việc chèn thêm phần tử vào mảng được thực hiện ngon, nhưng mới giới hạn bởi chèn thêm phần tử đó vào cuối mảng; chưa giải quyết được việc chèn vào một vị trí bất kỳ của mảng ban đầu.
Code tương đối sáng sủa; nhưng việc để thừa biến p gây tốn bộ nhớ cho tài nguyên!.
Về Đầu Trang Go down
http://congdongcviet.com/
Sponsored content





Help Bài tập về chèn một số vào mảng !. Empty
Bài gửiTiêu đề: Re: Help Bài tập về chèn một số vào mảng !.   Help Bài tập về chèn một số vào mảng !. I_icon_minitime

Về Đầu Trang Go down
 
Help Bài tập về chèn một số vào mảng !.
Về Đầu Trang 
Trang 1 trong tổng số 1 trang
 Similar topics
-
» Một số bài hướng dẫn về Mảng!
» VietPon.com -Mạng giảm giá cao cấp của Nhật chính thức ra mắt

Permissions in this forum:Bạn không có quyền trả lời bài viết
Diễn Đàn Khoa học Máy tính - ĐH Công nghệ thông tin (ĐHQG TP HCM) :: NGÔN NGỮ LẬP TRÌNH :: C/C++/C#-
Chuyển đến