Chào m.n , em có đoạn code :
#include<stdio.h>
#include<string.h>
struct Mathang{
char maHang[20], tenhang[20], donVi[10];
int soLuong, donGia;
};
void input(Mathang *&a, int n)
{
a = new Mathang[n];
for(int i = 0 ; i < n ; i++)
{
printf("\n-----MH thu %d--------\n");
printf("Ma hang :\n");
fflush(stdin);
gets(a[i].maHang);
printf("Ten hang :\n");
fflush(stdin);
gets(a[i].tenhang);
printf("Don vi :\n");
fflush(stdin);
gets(a[i].donVi);
printf("So luong :\n");
scanf("%d", &a[i].soLuong);
printf("Don gia :\n");
scanf("%d", &a[i].donGia);
}
}
void ghiFile(Mathang *a, int n)
{
FILE *f;
f = fopen("Bai2.txt", "wt");
for(int i = 0 ; i < n ; i++)
{
fprintf(f,"%15s%15s%15s%10d%10d\n", a[i].maHang, a[i].tenhang, a[i].donVi, a[i].soLuong, a[i].donGia);
}
fclose(f);
}
void docFile(Mathang *a, int n)
{
FILE *f;
f = fopen("Bai2.txt", "rt");
for(int i = 0 ; i < n ; i++)
{
fscanf(f,"%15s%15s%15s%10d%10d\n",&a[i].maHang, &a[i].tenhang, &a[i].donVi, &a[i].soLuong, &a[i].donGia);
printf("%15s%15s%15s%10d%10d\n", a[i].maHang,a[i].tenhang, a[i].donVi, a[i].soLuong, a[i].donGia);
}
fclose(f);
}
int main()
{
Mathang *a;
int n ;
scanf("%d", &n);
input(a,n);
ghiFile(a,n);
docFile(a,n);
return 0;
}
đề yêu cầu “Đọc dữ liệu từ file vừa ghi và hiển thị ra màn hình” . M.n xem và sửa lại phần đọc file của em giúp em với ạ, em cứ thấy sai sai sao ý, cảm ơn m.n ạ !