int main(){ struct book *phead = NULL, *ptemp, *prev; char filename[50] = "d:\\book.txt"; FILE *pbook; int i = 0; char ch, str[50];
if (pbook = fopen(filename, "r") == NULL) { printf("error in open file"); exit(0); }
while (!feof(pbook)) { ptemp = (struct book *)malloc(sizeof(struct book)); if (ptemp == NULL) { printf("error"); exit(0); }
if (phead == NULL) { printf("error in memory allocate"); exit(0); } else prev->next = ptemp; ptemp->next = NULL;
fgets(ptemp->num, 50, pbook); fgets(ptemp->bname, 50, pbook); fgets(ptemp->wname, 50, pbook); fgets(ptemp->press, 50, pbook); fgets(ptemp->sort, 50, pbook); fscanf(pbook, &ptemp->Ptime); fscanf(pbook, &ptemp->price);
prev = ptemp; }
//图书查询 void chaxun(struct book *head) { int a; printf(" ==========================================================\n"); printf(" ** 1-按图书编号查询 2-按图书名查询 **\n"); printf(" ** 3-按图书类别查询 4-按作者名查询 **\n"); printf(" ** 5-按出版时间查询 0-退出查询 **\n"); printf(" ==========================================================\n"); printf("请输入所选择的编号:"); scanf("%d", &a);
getchar();