char filename[20]; FILE *fp=NULL;
void creat(); void output(); void search(); void append(); void modify(); void delet();
int main() { int m; creat(); while(1) { printf(”\\n\\n添加,请按1\"); printf(”\\n查询,请按2”); printf(\"\\n修改,请按3”); printf(\"\\n删除,请按4”); printf(”\\n输出,请按5”); printf(”\\n退出,请按0\\n”); scanf(\"%d”,&m); if(m>=0&&m<=5) { switch(m) { case 1:append();break; case 2:search();break; case 3:modify();break; case 4:delet();break;
}
}
case 5:output();break; case 0:printf(”退出程序!”);break; } printf(\"\\n\\n操作完毕,请再次选择!”); } else printf(”\\n\\n选择错误,请再次选择!\");
void creat()
{ FILE *p=NULL; struct person one;
long s1;
printf(”\\n请输入图书信息:\"); scanf(\"%s”,filename);
if((fp=fopen(filename,”w\"))==NULL) { printf(\"\\n不能建立图书信息系统!\"); return;
} fprintf(fp,\"%10s %16s %8s %5s %16s %8s %6s\\n”,\"登录号”,\"书名\”作者名”,\"分类号\”出版单位”,\"出版时间”,\"价格”); printf(\"\\n请输入登录名,书名,作者名,分类号,出版单位,出版时间,价格\\n\"); scanf(”%s\。number); while (strcmp(one.number,”0\")) { scanf(”%s %s %s %s %s %s\。name,one.type,one.addr,one。time,one.cost); fprintf(fp,\"%10s %16s %8s %5s %16s %8s %6s\\n\",one.number,one.book,one。name,one。type,one。addr,one。time,one。cost); scanf(\"%s\",one。number); } fclose(fp); }
void output() { struct person one; if((fp=fopen(filename,”r\"))==NULL) { printf(\"\\n不能打开图书管理系统!”); return; } printf(”\\n%20s\\n\",”图 书 信 息”);
while(!feof(fp)) { fscanf(fp,\"%s %s %s %s %s %s %s\\n\,one。book,one。name,one。type,one.addr,one.time,one.cost); printf(”%10s %16s %8s %5s %16s %8s %6s\,one.book,one。name,one.type,one.addr,one.time,one。cost); } fclose(fp); }
void append() { struct person one;
if((fp=fopen(filename,\"a\"))==NULL) { }
printf(\"\\n不能打开图书管理系统!”); return;
printf(\"\\n请输入添加的登录名,书名,作者,分类号,出版单位,出版时间,价格\\n\"); scanf(\"%s%s%s%s%s%s%s”,one。number,one.book,one.name,one.type,one.addr,one.time,one.cost); fprintf(fp,”%10s %16s %8s %5s %16s %8s %6s\\n\。number,one。book,one.name,one。type,one。addr,one。time,one。cost); fclose(fp); }
void search() { int k=0;
char namekey[16]; struct person one; printf(\"\\n请输入书名:\"); scanf(\"%s”,namekey); if((fp=fopen(filename,\"rb\"))==NULL) { printf(”\\n不能打开图书管理系统!\"); return; } while(!feof(fp)) { fscanf(fp,”%s%s%s%s%s%s%s\\n”,one.number,one.book,one.name,one。type,one。addr,one。time,one.cost); if(!strcmp(namekey,one。book)) { printf(”\\n\\n已查到,记录为:”); printf(\"\\n%10s %16s %8s %5s %16s %8s %6s”,one.number,one.book,
one.name,one.type,one。addr,one。time,one.cost); k=1; } } if(!k)
printf(”\\n\\n对不起,图书管理系统中没有该图书信息!”); fclose(fp); }
void modify() {
int k=0; long offset;
char namekey[16]; struct person one;
printf(”\\n请输入书名:”); scanf(\"%s”,namekey);
if((fp=fopen(filename,\"r+\"))==NULL) { printf(”\\n不能打开图书管理系统!\"); return;
} while(!feof(fp)) { offset=ftell(fp); fscanf(fp,”%s%s%s%s%s%s%s\\n\",one。number,one。book,one。name,one.type,one.addr,one.time,one。cost); if(!strcmp(namekey,one。book)) { k=1; break; } } if(k) { printf(\"\\n已查到,记录为:\"); printf(”\\n%10s %16s %8s %5s %16s %8s %6s\",one。number,one.book,one.name,one.type,one。addr,one.time,one。cost); printf(\"\\n请输入新登录名,书名,作者名,分类号,出版单位,出版时间,价格:”); scanf(\"%s%s%s%s%s%s%s\",one。number,one。book,one.name,one。type,one。addr,one。time,one.cost); fseek(fp,offset,SEEK_SET); printf(”%ld”,ftell(fp)); fprintf(fp,\"%10s %16s %8s %5s %16s %8s %6s\\n”,one.number,one.book,one。name,one.type,one。addr,one。time,one.cost);
}
} else printf(\"\\n对不起,图书管理系统中没有此书的信息!\"); fclose(fp);
void delet() { int m,k=0; long offset1;
char namekey[16],valid[8]; struct person one;
printf(\"\\n请输入书名:\"); scanf(\"%s\",namekey);
if((fp=fopen(filename,”r+”))==NULL) { printf(\"\\n不能打开图书管理系统!\"); return; }
while(!feof(fp)) {
offset1=ftell(fp); fscanf(fp,”%s%s%s%s%s%s%s\\n”,one。number,one。book,one.name,one.type,one。addr,one.time,one。cost); if(!strcmp(namekey,one.book)) { k=1; break; } } if(k) { printf(”\\n已查到,记录为:\"); printf(”\\n%10s %16s %8s %5s %16s %8s %6s\\n\",one。number,one。book,one.name,one。type,one.addr,one。time,one.cost); printf(”\\n确定要删除,按1;不删除,按0:\"); scanf(”%d\&m); if(m) { fseek(fp,offset1,SEEK_SET); fprintf(fp,”%10s %16s %8s %5s %16s %8s %6s\\n”,\"”,\"”,””,\"\",\"”,\"\ } } else printf(”\\n对不起,图书管理系统中没有此书的信息!”);
}
fclose(fp);
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- huatuo0.com 版权所有 湘ICP备2023021991号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务