欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    《算法分析与设计综合实验》实验报告[图书信息管理系统].doc

    • 资源ID:2396498       资源大小:951KB        全文页数:34页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    《算法分析与设计综合实验》实验报告[图书信息管理系统].doc

    算法分析与设计综合实验实验报告姓 名:蔡志雄学 号:2015010906015指导教师:胡科日 期:2016年 月 日电 子 科 技 大 学实 验 报 告1一、实验名称:界面设计与创建文件二、实验内容1. 设计登录系统、主菜单、退出系统界面登录系统:输入以“*”显示的密码,三次键入机会。密码正确,进入系统;密码错误,程序结束。主菜单:按划分的模块,显示系统菜单。退出系统:在系统主菜单中输入“0”,以退出系统。2. 数据录入与数据存盘给定记录数,屏幕输入若干记录,并将数据存入磁盘文件中。三、算法设计与核心代码1.char inputa,data20,account34="Admin's",word20; int z,k=0,a=1;printf("输入管理员账户名:");/登录验证 scanf("%s",&data);strcat(account,data);strcat(account,".txt"); /提取数据 FILE *fpx=NULL;if(fpx=fopen(account,"r")fscanf(fpx,"%sn",&admin.name);fscanf(fpx,"%sn",&admin.ID);fscanf(fpx,"%sn",&admin.password);fclose(fpx);else printf("没有对应资料!n");system ("pause");return 0;if(strcmp(data,admin.name)=-1)/验证密码 printf("账号不存在n");return 0;else printf("账号存在(你将有3次输入密码机会)n");for(z=2;z>=-1;z-)if(z=-1)return 0;printf("输入密码:"); while(1) fflush(stdin); inputa=getch(); if(inputa!='r'&&inputa!='b')/密码隐藏 printf("*"); wordk=inputa; k+;else if(inputa='b')/退格删除 printf("b");printf(" ");printf("b");k-;else break;/回车结束 if(strcmp(word,admin.password)!=0) printf("密码错误(%d次机会)n",z); k=0; else printf("n密码正确!n");system ("pause");break;2.printf("*n");printf("图书数量:%d 读者数量:%dn",bnum,rnum);printf("n");printf("n");printf("n");printf(" 图书信息管理系统n");printf("n");printf("n");printf("n");printf("请做出您的选择:(输入对应序号)n");printf("n");printf("n");printf(" 1.图书管理 2.读者管理 管理员使用n");printf("n");printf(" 3.图书借还 任何人使用n");printf("n");printf(" 0.退出n");printf("n");printf("n");printf("n");printf("*n");printf("输入:");scanf(" %c",&input);switch(input)case '0':a=0;break;case '1':BookManage();break;case '2':ReaderManage();break;case '3':BookOperate();break; system("cls");3.四、实验主要结果(附程序运行界面截图)实 验 报 告2一、实验名称:显示记录与编辑记录二、实验内容1. 屏幕显示若干记录列表输出磁盘文件记录,并显示记录序号与记录总数。2. 按字段编辑记录输入记录序号,显示对应记录;按字段编辑记录。三、算法设计与核心代码int ShowRecord(int x)int b=1,c=1;char aim112="图书",aim212="读者",aim12,buffer80;/判断目的 if(x=1)/图书 strcpy(aim,aim1);strcat(aim,"");strcat(aim,"图书记录");strcat(aim,".txt");FILE *fp;if(fp=fopen(aim,"r")=NULL) printf("打开失败!n"); return -1; printf("序号 书号 书名 作者 日期 出版 类别 定价 是否借出n"); for(;b<=(bnum=getlinenum(1);b+) fgets(buffer,1024,fp); printf(" %d %s",c,buffer); c+; fclose(fp); system ("pause");else if(x=2)/读者 strcpy(aim,aim2);strcat(aim,"");strcat(aim,"读者记录");strcat(aim,".txt");FILE *fp;if(fp=fopen(aim,"r")=NULL) printf("打开失败!n"); return -1; for(;b<(rnum=getlinenum(2);b+) fgets(buffer,1024,fp); printf("%sn",buffer); fclose(fp);else printf("错误n");return -1; return 0; int FixRecord(int x)int b=1,c;char a,aim112="图书",aim212="读者",aim12,buffer80;FILE *fp,*ftp;/判断目的 if(x=1)/图书 strcpy(aim,aim1);strcat(aim,"");strcat(aim,"图书记录");strcat(aim,".txt");if(ftp=fopen("图书temp.txt","w")=NULL) printf("创建文件失败!n"); return -1; if(fp=fopen(aim,"r+")=NULL) printf("打开失败!n"); return -1; ShowRecord(1);printf("输入要编辑的条目序号:");scanf(" %d",&c);for(;b!=c;b+)fscanf(fp,"%s %s %s %s %s %s %d %d%*n",&books0.ID,&books0.name,&books0.author,&books0.date,&books0.publish,&books0.sort,&books0.price,&books0.borrowed);fprintf(ftp,"%s %s %s %s %s %s %d %d n",books0.ID,books0.name,books0.author,books0.date,books0.publish,books0.sort,books0.price,books0.borrowed);printf("开始编辑:n"); printf("输入书号:");scanf(" %s",&books0.ID);printf("书名:");scanf(" %s",&books0.name);printf("作者:");scanf(" %s",&books0.author);printf("日期:");scanf(" %s",&books0.date);printf("出版:");scanf(" %s",&books0.publish);printf("类别:");scanf(" %s",&books0.sort);printf("定价:");scanf(" %d",&books0.price);printf("是否借出:");scanf(" %d",&books0.borrowed);printf("书号:%s 书名:%s 作者:%s 日期:%s 出版:%s 类别:%s 定价:%d 是否借出:%dn确定?(y/n)n输入:",books0.ID,books0.name,books0.author,books0.date,books0.publish,books0.sort,books0.price,books0.borrowed);fflush(stdin);scanf(" %c",&a);if(a='y')fprintf(ftp,"%s %s %s %s %s %s %d %d n",books0.ID,books0.name,books0.author,books0.date,books0.publish,books0.sort,books0.price,books0.borrowed);b+;fscanf(fp,"%s %s %s %s %s %s %d %d%*n",&books0.ID,&books0.name,&books0.author,&books0.date,&books0.publish,&books0.sort,&books0.price,&books0.borrowed);printf("编辑成功!n");else printf("已取消创建.n");for(;b<=bnum;b+)fscanf(fp,"%s %s %s %s %s %s %d %d%*n",&books0.ID,&books0.name,&books0.author,&books0.date,&books0.publish,&books0.sort,&books0.price,&books0.borrowed);fprintf(ftp,"%s %s %s %s %s %s %d %d n",books0.ID,books0.name,books0.author,books0.date,books0.publish,books0.sort,books0.price,books0.borrowed);fclose(fp);fclose(ftp);remove(aim);rename("图书temp.txt",aim);ShowRecord(1); fclose(fp);else if(x=2)/读者 strcpy(aim,aim2);strcat(aim,"");strcat(aim,"读者记录");strcat(aim,".txt");if(fp=fopen(aim,"r+")=NULL) printf("打开失败!n"); return -1; fclose(fp);else printf("错误n");return -1; return 0; 四、实验主要结果(附程序运行界面截图)实 验 报 告3一、实验名称:增加记录与删除记录二、实验内容1. 屏幕增加记录(添加记录、插入记录)输入待增加的记录信息,并输入记录序号,将记录插入到指定序号对应记录之后。2. 删除指定的记录输入待删除的记录序号,并显示对应记录;显示确认信息,以删除指定记录。三、算法设计与核心代码int AddRecord(int x,int h)int b=1,i;char aim112="图书",aim212="读者",aim12,buffer80,buffer180,buffer280;list *t,*p;bnum=getlinenum(1);/判断目的 if(x=1)/图书 strcpy(aim,aim1);strcat(aim,"");strcat(aim,"图书记录");strcat(aim,".txt");FILE *fp;if(fp=fopen(aim,"r+")=NULL) printf("打开失败!n"); return -1; ShowRecord(1);printf("输入:n书号 书名 作者 日期 出版 类别 定价 是否借出n");scanf("%s %s %s %s %s %s %d %d",&books1.ID,&books1.name,&books1.author,&books1.date,&books1.publish,&books1.sort,&books1.price,&books1.borrowed);link *m=clist();p=m->head; get_and_add_list(x,m,NULL);int j=0;if(h>bnum+1)h=bnum+1;if(p=m->head)=NULL) t=(list *)malloc(sizeof(list);if(t=NULL)return -1;t->next=p->next;t->data=books1;m->head=t;m->length+;else if(h=1) t=(list *)malloc(sizeof(list); if(t=NULL)return -1;t->next=m->head; t->data=books1;m->head=t;m->length+;else while(p!=NULL&&j<h-2)p=p->next;j+;t=(list *)malloc(sizeof(list);if(t=NULL)return -1;t->next=p->next;t->data=books1;p->next=t;m->length+;fprintf_list(x,m); fclose(fp);else if(x=2)/读者 strcpy(aim,aim2);strcat(aim,"");strcat(aim,"读者记录");strcat(aim,".txt");FILE *fp;if(fp=fopen(aim,"r+")=NULL) printf("打开失败!n"); return -1; scanf(" %s",&buffer);for(;b!=h;b+)fgets(buffer,0,fp);fgets(buffer1,1024,fp);fprintf(fp,"%sn",buffer);b+;for(;b!=(bnum=getlinenum(1);b+)fgets(buffer2,1024,fp);fprintf(fp,"%sn",buffer1);b+;fgets(buffer1,1024,fp); fprintf(fp,"%sn",buffer2); fclose(fp);else printf("错误n");return -1; ShowRecord(x); printf("1n");return 0;int DeleteRecord(int x,char y)FILE *fin,*ftp;char ch,aim112="图书",aim212="读者",aim12,buffer80;if(x=1)/图书 strcpy(aim,aim1);strcat(aim,"");strcat(aim,"图书记录");strcat(aim,".txt");if(fin=fopen(aim,"r")=NULL) printf("打开失败!n"); return -1; if(ftp=fopen("图书temp.txt","w")=NULL) printf("创建文件失败!n"); return -1; while(fscanf(fin,"%s %s %s %s %s %s %d %d%*n",&books0.ID,&books0.name,&books0.author,&books0.date,&books0.publish,&books0.sort,&books0.price,&books0.borrowed)=8)if(strcmp(books0.ID,y)!=0)fprintf(ftp,"%s %s %s %s %s %s %d %d n",books0.ID,books0.name,books0.author,books0.date,books0.publish,books0.sort,books0.price,books0.borrowed); fclose(fin);fclose(ftp);remove(aim);rename("图书temp.txt","图书图书记录.txt");printf("删除成功!n");ShowRecord(1);else if(x=2)/读者 strcpy(aim,aim2);strcat(aim,"");strcat(aim,"读者记录");strcat(aim,".txt");if(fin=fopen(aim,"r")=NULL) printf("打开失败!n"); return -1; else printf("错误n");return -1; return 0;四、实验主要结果(附程序运行界面截图)实 验 报 告4一、实验名称:查询记录二、实验内容按指定字段查询记录显示查询子菜单,输入字段序号,按指定字段查询记录,并显示查询结果。特别地,对“定价”字段,输入区间左右端点值,在指定范围查询记录。三、算法设计与核心代码int InquireRecord(int x)int b=1,c,d;char aim112="图书",aim212="读者",aim12,buffer80;FILE *fp;/判断目的 if(x=1)/图书 strcpy(aim,aim1);strcat(aim,"");strcat(aim,"图书记录");strcat(aim,".txt");if(fp=fopen(aim,"r")=NULL) printf("打开失败!n"); return -1; printf("查询的依据是:n1.书号n2.书名n3.作者n4.出版日期n5.类别n6.定价n7.是否借出n0.返回n输入:");scanf(" %d",&c);switch(c) case 0:return 0;case 1:printf("输入书号:");scanf(" %s",&buffer);printf(" 书号 书名 作者 日期 出版 类别 定价 是否借出n");while(fscanf(fp,"%s %s %s %s %s %s %d %d%*n",&books0.ID,&books0.name,&books0.author,&books0.date,&books0.publish,&books0.sort,&books0.price,&books0.borrowed)=8)if(strcmp(books0.ID,buffer)=0)printf(" %s %s %s %s %s %s %d %d n",books0.ID,books0.name,books0.author,books0.date,books0.publish,books0.sort,books0.price,books0.borrowed); break;case 2:printf("输入书名:");scanf(" %s",&buffer);printf(" 书号 书名 作者 日期 出版 类别 定价 是否借出n");while(fscanf(fp,"%s %s %s %s %s %s %d %d%*n",&books0.ID,&books0.name,&books0.author,&books0.date,&books0.publish,&books0.sort,&books0.price,&books0.borrowed)=8)if(strcmp(books0.name,buffer)=0)printf(" %s %s %s %s %s %s %d %d n",books0.ID,books0.name,books0.author,books0.date,books0.publish,books0.sort,books0.price,books0.borrowed); break;case 3:printf("输入作者:");scanf(" %s",&buffer);printf(" 书号 书名 作者 日期 出版 类别 定价 是否借出n");while(fscanf(fp,"%s %s %s %s %s %s %d %d%*n",&books0.ID,&books0.name,&books0.author,&books0.date,&books0.publish,&books0.sort,&books0.price,&books0.borrowed)=8)if(strcmp(books0.author,buffer)=0)printf(" %s %s %s %s %s %s %d %d n",books0.ID,books0.name,books0.author,books0.date,books0.publish,books0.sort,books0.price,books0.borrowed); break;case 4:printf("输入出版日期:");scanf(" %s",&buffer);printf(" 书号 书名 作者 日期 出版 类别 定价 是否借出n");while(fscanf(fp,"%s %s %s %s %s %s %d %d%*n",&books0.ID,&books0.name,&books0.author,&books0.date,&books0.publish,&books0.sort,&books0.price,&books0.borrowed)=8)if(strcmp(books0.date,buffer)=0)printf(" %s %s %s %s %s %s %d %d n",books0.ID,books0.name,books0.author,books0.date,books0.publish,books0.sort,books0.price,books0.borrowed); break;case 5:printf("输入类别:");scanf(" %s",&buffer);printf(" 书号 书名 作者 日期 出版 类别 定价 是否借出n");while(fscanf(fp,"%s %s %s %s %s %s %d %d%*n",&books0.ID,&books0.name,&books0.author,&books0.date,&books0.publish,&books0.sort,&books0.price,&books0.borrowed)=8)if(strcmp(books0.sort,buffer)=0)printf(" %s %s %s %s %s %s %d %d n",books0.ID,books0.name,books0.author,books0.date,books0.publish,books0.sort,books0.price,books0.borrowed); break;case 6:printf("输入定价范围:(用空格隔开上下限)");scanf(" %d %d",&c,&d);printf(" 书号 书名 作者 日期 出版 类别 定价 是否借出n");while(fscanf(fp,"%s %s %s %s %s %s %d %d%*n",&books0.ID,&books0.name,&books0.author,&books0.date,&books0.publish,&books0.sort,&books0.price,&books0.borrowed)=8)if(books0.price>=c&&books0.price<=d)printf(" %s %s %s %s %s %s %d %d n",books0.ID,books0.name,books0.author,books0.date,books0.publish,books0.sort,books0.price,books0.borrowed); break;case 7:printf("是否借出:");scanf(" %d",&c);printf(" 书号 书名 作者 日期 出版 类别 定价 是否借出n");while(fscanf(fp,"%s %s %s %s %s %s %d %d%*n",&books0.ID,&books0.name,&books0.author,&books0.date,&books0.publish,&books0.sort,&books0.price,&books0.borrowed)=8)if(books0.borrowed=c)printf(" %s %s %s %s %s %s %d %d n",books0.ID,books0.name,books0.author,books0.date,books0.publish,books0.sort,books0.price,books0.borrowed); break; fclose(fp); system ("pause");else if(x=2)/读者 strcat(aim3,"");strcat(aim3,user.name);strcat(aim3,".txt");if(fp=fopen("读者读者记录.txt","r")=NULL) printf("打开失败!n"); return -1; if(ftp=fopen(aim3,"r")!=NULL)printf("查询的依据是:n1.学号n2.姓名n3.卡号n4.性别n5.已借书数n0.返回n输入:");scanf(" %d",&c);switch(c)case 0:;return 0;case 1:printf("输入学号:");scanf(" %s",&buffer);printf(" 学号 姓名 卡号 性别 已借书数n");while(fscanf(fp,"%s %s %s %s %d*n",&num,&users0.name,&users0.ID,&users0.sex,&users0.n)=5)d=users0.n;if(strcmp(users0.ID,buffer)=0)users0.sex2='0' printf("%s %s %s

    注意事项

    本文(《算法分析与设计综合实验》实验报告[图书信息管理系统].doc)为本站会员(文库蛋蛋多)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开