01/10/2018, 08:53
Cấu Trúc từ đọc tập tin
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct sach{
int ma;
char ten[30];
char tacgia[20];
int nxb;
};
void docfile(FILE *f,struct sach sv[30]);
void ghifile(FILE *f,struct sach sv[30]);
int main()
{
FILE *fi,*fo;
struct sach sv[10];
docfile(fi,sv);
ghifile(fo,sv);
printf("
%-20s %-25s %-20s %-10s
","Ma Sach","Ten Sach","Tac Gia","Ma NXB");
return(0);
}
void docfile(FILE *f,struct sach sv[30])
{
char temp[10];
f=fopen("D:/fi.txt","r");
int i=0 ;
for(int i=0;i<3;i++)
{
fflush(stdin);
fscanf(f,"%d",&sv[i].ma);
fgets(temp,2,f);
fgets(sv[i].ten,255,f);fflush(stdin);
sv[i].ten[strlen(sv[i].ten)-1]=' ';
fgets(sv[i].tacgia,255,f);
sv[i].ten[strlen(sv[i].tacgia)-1]=' ';
fflush(stdin);
fscanf(f,"%d",&sv[i].nxb);
}
fclose(f);
}
void ghifile(FILE *f,struct sach sv[30])
{
f=fopen("D:/fo.txt","w");
fprintf(f,"
%-15s %-30s %-20s %-15s
","Ma","Ten Sach","Tac Gia","Ma NXB");
for(int i=0;i<3;i++)
{
fprintf(f,"%-15d %-30s %-20s %-15d
",sv[i].ma,sv[i].ten,sv[i].tacgia,sv[i].nxb);
}
fclose(f);
}
Tình Hình Là Việc Hàm docfile của em có vẫn đề ở chỗ cứ đọc dấu “cách” và"xuống hàng" làm cho cấu trúc lộn tùng phèo.
em đã thử nhiều cách như tạo 1 chuỗi để đọc rồi loại bỏ “cách” với “xuống hàng” nhưng vẫn ko triệt để .
Anh chị em bạn dì có cách nào giúp em với ạ ^^
Bài liên quan