




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
#include"stdio.h"#include"stdlib.h"#include"string.h"#include"io.h"typedefstructbook{ charnum[15];//中图分类号 charname[20];//书名 charauthor[20];//作者 charpress[20];//出版单位 chartime[15];//出版时间 charstatus[10];//是否可借 doubleprice;//价格 intcount;//库存量}book;voidmenu(); //图书馆系统界面voidinsert();//插入图书信息记录voidbrowse();//浏览图书信息voidfind();//查找图书信息voiddeleter();//删除图书信息voidmodify();//修改图书信息voidleave();//退出图书系统voidmain(){ intchoice; do { menu(); printf("请选择服务项目:"); scanf("%d",&choice); switch(choice) { case1:insert();break; case2:browse();break; case3:find();break; case4:deleter();break; case5:modify();break; case6:leave();break; default:printf("输入数据错误,请从新输入!"); } }while(1); }voidmenu(){ printf("\t====================欢迎进入图书馆系统!=============================\n\n"); printf("\t\t*****************1.录入图书信息********************\n"); printf("\t\t*****************2.浏览图书信息********************\n"); printf("\t\t*****************3.查找图书信息********************\n"); printf("\t\t*****************4.删除图书信息********************\n"); printf("\t\t*****************5.修改图书信息********************\n"); printf("\t\t********************6.退出*************************\n");}voidinsert(){ FILE*fp; booka={"\0","\0","\0","\0","\0","\0",0.0,0}; if(access("bookinf.txt",0))//如果文件不存在,则初始化文件格式 { if((fp=fopen("bookinf.txt","w"))==NULL) { printf("filecreatfailure!"); exit(0); } fprintf(fp,"中图分类好书名作者出版社出版时间状态价格数量"); } else//如果文件存在,则打开文件追加信息 { if((fp=fopen("bookinf.txt","a+"))==NULL) { printf("fileopenerror!"); exit(0); } } printf("请输入图书信息\n"); printf("中图分类好 书名 作者 出版社 出版时间 状态 价格 数量\n"); scanf("%s%s%s%s%s%s%lf%d",a.num,,a.author,a.press,a.time,a.status,&a.price,&a.count); printf("%s%s%s%s%s%s%lf%d\n",a.num,,a.author,a.press,a.time,a.status,a.price,a.count); fprintf(fp,"\n%-15s%-20s%-20s%-20s%-15s%-10s%-8.2lf%4d",a.num,,a.author,a.press,a.time,a.status,a.price,a.count);//-为左对齐,必须是“\n和+右对齐”,方便实现browse()函数 fclose(fp);}voidbrowse(){ FILE*fp; booka={"\0","\0","\0","\0","\0","\0",0.0,0},b=a; if((fp=fopen("bookinf.txt","a+"))==NULL) { printf("fileopenerror!"); exit(0); } fscanf(fp,"%*[^\n]");//跳过文本的第一行fscanf(fp,"%*[^\n]%*c");? while(!feof(fp)) { fscanf(fp,"%s%s%s%s%s%s%lf%d",a.num,,a.author,a.press,a.time,a.status,&a.price,&a.count); printf("%-4s%-4s%-4s%-4s%-4s%-4s%-8.2lf%-4d\n",a.num,,a.author,a.press,a.time,a.status,a.price,a.count); a=b; } fclose(fp);}voidfind(){ charstr[15]="\0"; FILE*fp; intflag=0; booka={"\0","\0","\0","\0","\0","\0",0.0,0},b=a; printf("请输入所要查找图书的中图分类号:"); scanf("%s",str); if((fp=fopen("bookinf.txt","r"))==NULL) { printf("fileopenerror!\n"); exit(0); } fscanf(fp,"%*[^\n]");//跳过文本的第一行fscanf(fp,"%*[^\n]%*c");? while(!feof(fp)) { fscanf(fp,"%s%s%s%s%s%s%lf%d",a.num,,a.author,a.press,a.time,a.status,&a.price,&a.count); if(!strcmp(a.num,str)) { flag=1; printf("所找图书信息为:"); printf("%-4s%-4s%-4s%-4s%-4s%-4s%-8.2lf%-4d\n",a.num,,a.author,a.press,a.time,a.status,a.price,a.count); break; } a=b;//b的用处 } if(flag==0) printf("您所找的图书不存在!\n"); fclose(fp);}voiddeleter(){ charstr[15]="\0"; intflag=0; FILE*fp,*fp1; booka={"\0","\0","\0","\0","\0","\0",0.0,0},b=a; printf("请输入所要删除图书的中图分类号:"); scanf("%s",str); if((fp=fopen("bookinf.txt","r"))==NULL) { printf("fileopenerror!"); exit(0); } if((fp1=fopen("f.txt","w"))==NULL) { printf("fileopenerror!"); exit(0); } fprintf(fp1,"中图分类好书名作者出版社出版时间状态价格数量"); fscanf(fp,"%*[^\n]");//跳过文本的第一行fscanf(fp,"%*[^\n]%*c");? while(!feof(fp)) { fscanf(fp,"%s%s%s%s%s%s%lf%d",a.num,,a.author,a.press,a.time,a.status,&a.price,&a.count); if(!strcmp(str,a.num)) { flag=1; continue; } fprintf(fp1,"\n%-15s%-20s%-20s%-20s%-15s%-10s%-8.2lf%4d",a.num,,a.author,a.press,a.time,a.status,a.price,a.count); a=b; } fclose(fp1); fclose(fp); remove("bookinf.txt"); rename("f.txt","bookinf.txt"); if(flag==0) printf("所要删除的图书不存在!\n"); else printf("删除成功!\n");}voidmodify(){ charstr[15]="\0"; FILE*fp,*fp1; chars[120]="\0"; booka={"\0","\0","\0","\0","\0","\0",0.0,0}; printf("请输入所要修改图书的中图分类号:"); scanf("%s",str); if((fp=fopen("bookinf.txt","r+"))==NULL) { printf("fileopenerror!"); exit(0); } if((fp1=fopen("f.txt","w"))==NULL) { printf("fileopenerror!"); exit(0); } fgets(s,120,fp);//读取bookinf.txt第一行的信息,使读取位置移动到第二行 fprintf(fp1,"中图分类好书名作者出版社出版时间状态价格数量");//初始化新文件f.txt while(!feof(fp)) { fscanf(fp,"%s%s%s%s%s%s%lf%d",a.num,,a.author,a.press,a.time,a.status,&a.price,&a.count); if(!strcmp(str,a.num)) //如果遇到所要修改的记录,则从新输入图书信息 { printf("请输入图书信息,即将记录修改为:\n"); printf("中图分类好 书名 作者 出版社 出版时间 状态 价格 数量\n"); scanf("%s%s%s%s%s%s%lf%d",a.num,,a.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 薪酬福利调整说明书与实施方案解读
- 绿色能源供应协议书
- 兄妹共同出资购房合同
- 全新绿化工程协议书
- 电力行业电力供应稳定性免责协议
- 员工年度工作总结与未来发展规划报告
- 项目合作方案设计建议书
- 购买公司股份协议书十
- 第二单元 社会主义制度的建立与社会主义建设的探索 大单元教学设计 2023-2024学年部编版八年级历史下册
- 第二单元4《古诗三首》教学设计-2024-2025学年统编版语文三年级上册
- 《物理学的发展史》课件
- 2025年广东广州市海珠区官洲街道办事处政府雇员招聘5人高频重点提升(共500题)附带答案详解
- 《道路交通安全法》课件完整版
- 《小肠梗阻的诊断与治疗中国专家共识(2023版)》解读
- 2024届广东省广州市高三一模考试英语试题讲评课件
- 切削加工中的刀具路径规划算法考核试卷
- 《推拿学》期末考试复习题库(含答案)
- 2024年经济师考试工商管理(中级)专业知识和实务试卷及解答参考
- 10kV配电室工程施工方案设计
- 2025年中国洗衣凝珠行业市场现状及投资态势分析报告(智研咨询)
- DB41T 2466-2023 浸水电梯使用管理规范
评论
0/150
提交评论