Sắp xếp bưu kiện theo mã bưu kiện

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

struct BuuKien
{
	char ma[20];
	char tengui[50];
};

void BK(BuuKien &b)
{
	printf("\nNhap ma buu kien: ");
	scanf("%s", &b.ma);
	printf("\nNhap ten nguoi gui: ");
	fflush(stdin);
	gets(b.tengui);
}

void SL(int &n)
{
	n=0;
	do
	{
		printf("\nNhap so luong buu kien: ");
		scanf("%d", &n);
		if(n<=0)
		{
			printf("\nBan nhap sai! Xin nhap lai");
		}
	}while(n<=0);
}

void NhapMang(BuuKien a[], int n)
{
	for(int i=0; i<n; i++)
	{
		printf("\nNhap buu kien thu %d: ", i+1);
		BK(a[i]);
	}
}

void SapXep(BuuKien a[], int n)
{
	BuuKien temp;
	printf("\nBuu kien duoc sap xep theo ma: ");
	for(int i=0; i<n-1; i++)
	{
		for(int j=i+1; j<n; j++)
		{
			if(a[i].ma>a[j].ma)
			{
				temp=a[i];
	            a[i] = a[j];
	            a[j] = temp;
			}
			printf("%s\t",a[i].ma);
		}
	}

}

int main()
{
	BuuKien a[50];
	int n;
	SL(n);
	NhapMang(a,n);
	SapXep(a,n);
	getch();
	return 0;
}

mình có thử xuất rồi mà nó chỉ hiện lên mỗi mã đầu còn mấy mã sau không hiển thị. mn giúp mình với.

bạn xuất thật luôn xem sao nhé =))

bạn nên tách riêng xử lí xuất và xử lí sắp xếp :smiley:

2 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?