作业之结构体图书原创.docx_第1页
作业之结构体图书原创.docx_第2页
作业之结构体图书原创.docx_第3页
作业之结构体图书原创.docx_第4页
作业之结构体图书原创.docx_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

#include#include#include#includetypedef struct bookchar shuhao31;char name31;char writer31;char publisher31;float price;int remain;int menu();book str30;int check();int checkp();int checkd();int checkn();int checkw();void dele();void change();void add();void show();int num=0;int creat();void save();void main()int i,j,m,n,k;char c;m=1;while(m)k=menu();switch(k)case 1:num=creat();break;case 2:add();break; case 3:dele();break;case 4:change();break;case 5:checkp();break;case 6:checkn();break;case 7:checkw();break;case 8:save();break;case 9:show();break; case 0:exit(1);printf(继续吗?n继续-1,结束-0n);scanf(%d,&m);int menu()int choice;while(1)system(cls);printf(1-创建图书信息n);printf(2-新添图书n);printf(3-删除图书n);printf(4-修改图书n); printf(5-按出版社查询n);printf(6-按书名查询n);printf(7-按作者查询n);printf(8-保存图书信息n);printf(9-显示n);printf(0-退出n);printf(请选择:);scanf(%d,&choice);if(choice=0&choice10) break;return choice;int creat()int n,i,m,k=0,f=0;FILE *fp;printf(请问您是想要读取原来存在的数据还是重新建立新数据?n读取请按1n建立请按2n); scanf(%d,&m);if(m=2) fp=fopen(library.dat,wb);printf(请输入将要创建的图书的种类数); scanf(%d,&n);for(i=0;in;i+)printf(请输入第%d本书的信息n,i+1);printf(书号n);scanf(%s,stri.shuhao);printf(书名n); scanf(%s,); printf(作者n);scanf(%s,stri.writer); printf(出版社n);scanf(%s,stri.publisher);printf(单价n);scanf(%f,&stri.price); printf(库存量n);scanf(%d,&stri.remain);fprintf(fp,%s %s %s %s %f %dn,stri.shuhao,,stri.writer,stri.publisher,stri.price,stri.remain);printf(录入成功n);fclose(fp);return(n);elseif(fp=fopen(library.dat,rb)=NULL)printf(文件不存在n);exit(0); while(!feof(fp)fscanf(fp,%s%s%s%s%f%dn,strk.shuhao,,strk.writer,strk.publisher,&strk.price,&strk.remain);k+;fclose(fp);return k;void show() int k; printf(%7s%7s%7s%7s%7s%7sn,书号,书名,作者,出版社,单价,库存数); for(k=0;knum;k+) printf(%7s%7s%7s%7s%7.1f%7dn,strk.shuhao,,strk.writer,strk.publisher,strk.price,strk.remain); printf(现在有%d本书n,num);void add()int numb,i;printf(请输入你要增加的图书的本数n);scanf(%d,&numb); for(i=num;inumb+num;i+)printf(请输入第%d本书的信息n,i+1);printf(书号n);scanf(%s,stri.shuhao);printf(书名n); scanf(%s,); printf(作者n); scanf(%s,stri.writer); printf(出版社n); scanf(%s,stri.publisher); printf(价格n);scanf(%f,&stri.price);printf(库存量n);scanf(%d,&stri.remain);num=num+numb; printf(添加成功!n);int check() char temp30;int k; printf(请输入你要修改的图书的书名n);scanf(%s,temp);for(k=0;knum;k+)if(strcmp(,temp)=0) printf(%7s%7s%7s%7s%7s%7sn,书号,书名,作者,出版社,单价,库存数);printf(%7s%7s%7s%7s%7.1f%7dn,strk.shuhao,,strk.writer,strk.publisher,strk.price,strk.remain);break; if(k=num)printf(没有这本图书n);elsereturn(k);int checkd()FILE *fp;char temp30;int k;printf(请输入你要删除的图书的书名n);scanf(%s,temp);for(k=0;knum;k+)if(strcmp(,temp)=0) printf(%7s%7s%7s%7s%7s%7sn,书号,书名,作者,出版社,单价,库存数);printf(%7s%7s%7s%7s%7.1f%7dn,strk.shuhao,,strk.writer,strk.publisher,strk.price,strk.remain);break;if(k=num)printf(没有这本图书n); return(k);int checkp() char temp30;int k; printf(请输入你要查找的图书的出版社n);scanf(%s,temp);for(k=0;knum;k+)if(strcmp(strk.publisher,temp)=0) printf(%7s%7s%7s%7s%7s%7sn,书号,书名,作者,出版社,单价,库存数);printf(%7s%7s%7s%7s%7.1f%7dn,strk.shuhao,,strk.writer,strk.publisher,strk.price,strk.remain);break;if(k=num)printf(没有这本图书);return(k);int checkn()char temp30;int k;printf(请输入你要查找的图书的书名n);scanf(%s,temp);for(k=0;knum;k+)if(strcmp(,temp)=0) printf(%7s%7s%7s%7s%7s%7sn,书号,书名,作者,出版社,单价,库存数);printf(%7s%7s%7s%7s%7.1f%7dn,strk.shuhao,,strk.writer,strk.publisher,strk.price,strk.remain);break;if(k=num)printf(没有这本图书n); return(k);int checkw() char temp30;int k; printf(请输入你要查找的图书的书名n);scanf(%s,temp);for(k=0;knum;k+)if(strcmp(strk.writer,temp)=0) printf(%7s%7s%7s%7s%7s%7sn,书号,书名,作者,出版社,单价,库存数);printf(%7s%7s%7s%7s%7.1f%7dn,strk.shuhao,,strk.writer,strk.publisher,strk.price,strk.remain);break;if(k=num)printf(没有这本图书n);return(k);void change() int i; i=check();if(i!=num)printf(请输入要修改的信息); printf(书号n);scanf(%s,stri.shuhao);printf(书名n); scanf(%s,); printf(作者n); scanf(%s,stri.writer); printf(出版社n); scanf(%s,stri.publisher); printf(价格n);scanf(%f,&stri.price);printf(库存量n);scanf(%d,&stri.remain); printf(修改成功n);void dele()int i,k;i=checkd();if(i!=num) for(k=i;knum;k+)strk=strk+1;num-

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论