欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    c语言实习 图书信息管理系统报告.doc

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

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

    c语言实习 图书信息管理系统报告.doc

    C语言课程设计报告课程名称 C语言课程设计 教师名称 谷淑化 姓 名 王保成 学 号 20211000341 专 业 地质工程岩土钻掘方向 所在院系 工程学院 班 级 051113 类 别 图书信息管理系统 日 期 2021年8月 课程设计评语对课程论文的评语:平时成绩:课程论文成绩:总 成 绩:评阅人签名:注:1、无评阅人签名成绩无效;2、必须用钢笔或圆珠笔批阅,用铅笔阅卷无效;3、如有平时成绩,必须在上面评分表中标出,并计算入总成绩。目 录课程设计评语目 录1 课程设计题目图书信息管理系统图书信息包括登录号、书名、作者名、分类号、出版单位、出版时间、价格等。试设计一图书信息管理系统,使之能提供以下功能:2 程序设计思路3 功能模块图各功能模块流程图31输入模块32浏览模块33查找模块4数据结构及算法设计4.1 主函数4.2各功能模块设计421输入模块423查找模块43公共函数434删除函数5 程序代码及运行结果51 程序代码52运行结果如下截面图;521主菜单函数522输入模块523浏览模块524查找模块525修改和删除模块6 编程中遇到的困难及解决方法7总结心得:8致谢1 课程设计题目图书信息管理系统图书信息包括登录号、书名、作者名、分类号、出版单位、出版时间、价格等。试设计一图书信息管理系统,使之能提供以下功能:1系统以菜单方式工作2图书信息录入功能图书信息用文件保存3图书信息浏览功能4图书信息查询功能5图书信息删除与修改功能可选项提示 系统以菜单方式工作,因此要提供键盘式选择菜单以实现功能选择;图书信息采用文件保存,因而要提供文件的输入/输出操作;要实现、图书信息的浏览功能,那么要提供信息显示操作;要实现图书信息查询功能,那么要提供查找操作;要实现图书信息删除与修改功能,要提供文件记录的删除修改操作。整个系统被设计为图书信息输入模块,图书信息浏览模块,图书信息查询模块和图书信息删除与修改模块。建立图书信息结构体,结构体成员包括登录号、书名、作者名、分类号、出版单位、出版时间、价格。2 程序设计思路根据需求分析,可以对这个系统的设计分为以下几个模块:图书信息管理系统数据输入数据浏览数据查找删除和修改退出系统功能模块图3 功能模块图各功能模块流程图31输入模块32浏览模块需求分析 该模块的功能是显示所有图书记录信息。流程图 显示图书记录返回主菜单退出 浏览模块流程图33查找模块流程图:按书名查找模块1,2,还是3用户作出选择,输入一整型数值用户作出选择,输入一整型数值1,2,还是3 返回主菜单退出 返回上一层按书名查找模块流程图流程图按作者名称查找模块用户作出选择,输入一整型数值1,2,还是3 返回主菜单 返回上一层退出按作者查找模块流程图注:由于按登录号、书名、作者名、分类号、出版单位、出版时间和价格等查询图书信息具有相似的编码,本程序为方便起见,仅编入了按书名和作者名查找功能。34修改和删除模块需求分析 该模块的功能是修改或删除图书纪录信息并且覆盖原有图书信息。流程图删除或修改模块 用户作出选择,输入一整型数值 调用删除或修改函数,调用读取函数用户输入修改或删除信息用户作出选择,输入1或2或31,2或3 2. 返回1.确认 3.返回上一层插入模块流程图4数据结构及算法设计4.1 主函数程序int main() int re=1,t,j=0;int n,choice; while(re=1) t=1;system("cls"); printf(" *n");printf(" 主菜单 nn"); printf(" 1.录入信息n"); printf(" 2.查看信息n"); printf(" 3.查询信息n"); printf(" 4.删除与修改信息n");printf(" 5.退出n");printf(" *"); printf("n");if(j=1) printf("nt选择错误!"); printf("nt请选择1-5: _bb"); scanf("%d",&choice); switch(choice)case 1:printf("nt1: 录入信息n"); input(); printf("n t1.返回主菜单;nt 2.退出 ntt请选择: _bb");scanf("%d",&re); break; case 2: printf("nt2.查看信息n"); output(); printf("nt 1.返回主菜单;nt 2.退出ntt请选择: _bb");scanf("%d",&re); break; case 3:while(t=1)printf("nt3.查询信息n"); printf("nt 请选择查询方式:nt 1.按书名nt 2.按作者名nt 3.其余任意数字键返回主菜单 _bb"); scanf("%d",&n); if(n=1)book_name(); else if(n=2) author_name(); else re=1; goto lebel; printf("nt 1.返回上一层;nt 2.返回主菜单;nt 3.退出 nt 请选择: _bb"); scanf("%d",&t);if(t=1) system("cls"); if(t=2) re=1; if(t=3) re=0; lebel: break;case 4:while(t=1|f=1)printf("nt4.删除与修改信息n"); printf("nt 请选择:nt 1.删除信息;nt 2.修改信息n t 3.其余任意数字键返回主菜单 _bb"); scanf("%d",&n); if(n=1)delet(); else if(n=2)modify(); else re=1; goto lebe; printf("nt 1.返回上一层;nt 2.返回主菜单;nt 3.退出 ntt 请选择: _bb"); scanf("%d",&t); if(t=1)system("cls"); if(t=2) re=1; if(t=3) re=0; lebe: break; case 5:re=0; break; default:re=1;j=1;return 0;注:主函数为主菜单,采用选择语句。4.2各功能模块设计421输入模块在这里主要运用结构体的形式来输入保存图书的各种信息,包括图书的登录号、书名、作者名、分类号等等,因为图书的数目众多,因此采用结构体数组的形式。用结构体来存放图书信息:#define LEN sizeof(struct book)typedef struct book int sort;char book_name15;char author_name15;int vert_number;char publish_unit15;char publish_time10;int price;B;B *P,*p1,boo;程序:void input() int result; int i; printf("tt要录入信息的书籍数量为: _本bb");scanf("%d",&num);if(num>0) P=(B *)malloc(LEN * num);for(i=0;i<num;i+) Pi.sort=i+1; printf("ntNO. %d",Pi.sort);printf("n"); printf("t 请按序输入书名,作者名,分类号,出版单位,出版时间,价格ntt ");scanf("%s%s%d%s%s%d",Pi.book_name,Pi.author_name,&Pi.vert_number,Pi.publish_unit,Pi.publish_time,&Pi.price); printf("n"); result=save(); if(result=0)printf(" t录入信息失败!n");num = 0;if(result=1) printf(" t成功录入信息!n");else num=0;printf(" t输入错误!");422浏览模块程序:void output()int i;get();if(get()=1) printf("ntt成功获取信息!n"); for(i=0;i<num;i+)printf("nttNO.t%dn",Pi.sort); printf("tt 书名 作者名 序列号 出版单位 出版时间 价格n"); printf("tt %s %s %d %s %s %d",Pi.book_name,Pi.author_name,Pi.vert_number,Pi.publish_unit,Pi.publish_time,Pi.price); printf("n");else printf(" t文件翻开错误!"); 423查找模块4231按书名查找程序:void book_name()int i;int tag=0; char ch15;printf("t 请输入书名: _bb");scanf("%s",ch);if(get()=0)printf(" t无法查询!");return;if(get()=1)for(i=0;i<num;i+)if(strcmp(Pi.book_name,ch)=0)printf("ntt 排列号 书名 作者名 序列号 出版单位 出版时间 价格n");printf("tt %d %s %s %d %s %s %dn",Pi.sort,Pi.book_name, Pi.author_name,Pi.vert_number,Pi.publish_unit,Pi.publish_time,Pi.price); tag =1;if (tag = 0)printf("n t没有相关信息!n");4232按作者查找void author_name()int i;int tag=0; char ch15;printf("t 请输入作者名: _bb");scanf("%s",ch);if(get()=0)printf(" t无法查询!");return;if(get()=1)for(i=0;i<num;i+)if(strcmp(Pi.author_name,ch)=0)printf("ntt 排列号 书名 作者名 序列号 出版单位 出版时间 价格n");printf("tt %d %s %s %d %s %s %dn",Pi.sort,Pi.book_name,Pi.author_name,Pi.vert_number,Pi.publish_unit,Pi.publish_time,Pi.price);tag =1;if (tag = 0)printf(" t没有相关信息!");43公共函数431保存函数 int save()FILE *fp;int i,n=0,n1=0;if(fp=fopen("book.txt","w")=NULL)return 0;fprintf(fp,"%dn",num);for(i=0;i<num;i+)fprintf(fp,"%d %s %s %d %s %s %d",Pi.sort,Pi.book_name,Pi.author_name,Pi.vert_number,Pi.publish_unit,Pi.publish_time,Pi.price); fprintf(fp,"n");fclose(fp);return 1;432读取函数 int get()FILE *fp;int i;fp=fopen("book.txt","r");if(fp=NULL)return 0;elsefscanf(fp,"%d",&num); if(num>0)P=(B *)malloc(LEN * num); for(i=0;i<num;i+)fscanf(fp,"%d%s%s%d%s%s%d",&Pi.sort,Pi.book_name, Pi.author_name,&Pi.vert_number,Pi.publish_unit,Pi.publish_time,&Pi.price);fclose(fp); return 1;else fclose(fp);return 0;433修改函数void modify() int t,n,i,y=1;int result,z,x;t=get();if(t=0)printf("n t翻开文件错误,无法修改!");return; else if(y=1)printf("nt 您要修改信息的图书排列号为(1-%d): _bb",num);scanf("%d",&n);if(n>=1&&n<=num)for(i=0;i<num;i+)if(Pi.sort=n)printf("nt您即将修改以下信息:n");printf("tt 排列号 书名 作者名 序列号 出版单位 出版时间 价格n"); printf("tt %d %s %s %d %s %s %d",Pi.sort,Pi.book_name,Pi.author_name,Pi.vert_number,Pi.publish_unit,Pi.publish_time,Pi.price);printf("nnt 确认请按1;返回请按2;返回上一层请按3 _bb");scanf("%d",&x); if(x=1) /p1=&boo; printf("t 您要将信息修改为:n"); printf("tt书名: _bb"); scanf("%s",p1->book_name); printf("tt作者名: _bb"); scanf("%s",p1->author_name); printf("tt序列号: _bb"); scanf("%d",&p1->vert_number); printf("tt出版单位: _bb"); scanf("%s",p1->publish_unit); printf("tt出版时间: _bb"); scanf("%s",p1->publish_time); printf("tt价格: _bb"); scanf("%d",&p1->price); strcpy(Pi.book_name,p1->book_name); strcpy(Pi.author_name,p1->author_name); Pi.vert_number=p1->vert_number; strcpy(Pi.publish_unit,p1->publish_unit); strcpy(Pi.publish_time,p1->publish_time); Pi.price=p1->price; y=0;z=1;else if(x=2) y=1;z=0; else y=0; f=1;elseprintf(" t输入错误,请重新输入:");y=1;while(z=1)result=save(); if(result=0)printf("n t修改信息失败!n");z=0; if(result=1) printf("n t成功修改信息!n");z=0; return;434删除函数void delet()int t,n,i,j,y=1;int result,z=0,x; t=get();if(t=0)printf("n t翻开文件错误,无法删除!");return;else while(y=1) printf("nt 您要删除信息的图书排列号为(1-%d): _bb",num); scanf("%d",&n); if(n>=1&&n<=num)for(i=0;i<num;i+)if(Pi.sort=n)printf("nt 您即将删除以下信息:n"); printf("tt 排列号 书名 作者名 序列号 出版单位 出版时间 价格n"); printf("tt %d %s %s %d %s %s %d",Pi.sort,Pi.book_name, Pi.author_name,Pi.vert_number,Pi.publish_unit, Pi.publish_time,Pi.price); printf("nnt 确认请按1;返回请按2;返回上一层请按3 _bb"); scanf("%d",&x); if(x=1)for(j=i;j<num-1;j+) strcpy(Pj.book_name,Pj+1.book_name); strcpy(Pj.author_name,Pj+1.author_name); Pj.vert_number=Pj+1.vert_number; strcpy(Pj.publish_unit,Pj+1.publish_unit); strcpy(Pj.publish_time,Pj+1.publish_time); Pj.price=Pj+1.price; num=num-1; y=0; z=1; else if(x=2) y=1;else y=0;f=1;elseprintf(" t输入错误,请重新输入:");y=1;while(z=1)result=save(); if(result=0)printf(" nt删除信息失败!n");z=0;if(result=1) printf(" nt成功删除信息!n");z=0;return;5 程序代码及运行结果51 程序代码#include<stdio.h>#include<stdlib.h>#include<string.h>#define LEN sizeof(struct book)typedef struct book int sort;char book_name15;char author_name15;int vert_number;char publish_unit15;char publish_time10;int price;B;B *P,*p1,boo;int num=0,f=0;int save();void input();int get();void output();void book_name();void author_name();void modify();void delet();int main() int re=1,t,j=0;int n,choice;while(re=1) t=1;system("cls"); printf(" *n");printf(" 主菜单 nn"); printf(" 1.录入信息n"); printf(" 2.查看信息n"); printf(" 3.查询信息n"); printf(" 4.删除与修改信息n");printf(" 5.退出n");printf(" *"); printf("n");if(j=1) printf("nt选择错误!"); printf("nt请选择1-5: _bb"); scanf("%d",&choice); switch(choice)case 1:printf("nt1: 录入信息n"); input();printf("n t1.返回主菜单;nt 2.退出 ntt请选择: _bb");scanf("%d",&re); break; case 2: printf("nt2.查看信息n"); output();printf("nt 1.返回主菜单;nt 2.退出ntt请选择: _bb");scanf("%d",&re); break; case 3:while(t=1)printf("nt3.查询信息n"); printf("nt 请选择查询方式:nt 1.按书名nt 2.按作者名nt 3.其余任意数字键返回主菜单 _bb"); scanf("%d",&n); if(n=1)book_name(); else if(n=2) author_name(); else re=1; goto lebel; printf("nt 1.返回上一层;nt 2.返回主菜单;nt 3.退出 nt 请选择: _bb"); scanf("%d",&t);if(t=1)system("cls"); if(t=2) re=1; if(t=3) re=0; lebel: break;case 4:while(t=1|f=1)printf("nt4.删除与修改信息n"); printf("nt 请选择:nt 1.删除信息;nt 2.修改信息n t 3.其余任意数字键返回主菜单 _bb"); scanf("%d",&n); if(n=1)delet(); else if(n=2)modify(); else re=1; goto lebe; printf("nt 1.返回上一层;nt 2.返回主菜单;nt 3.退出 ntt 请选择: _bb"); scanf("%d",&t); if(t=1)system("cls"); if(t=2) re=1; if(t=3) re=0; lebe: break;case 5:re=0; break;default:re=1;j=1;return 0;int save()FILE *fp;int i,n=0,n1=0;if(fp=fopen("book.txt","w")=NULL)return 0;fprintf(fp,"%dn",num);for(i=0;i<num;i+)fprintf(fp,"%d %s %s %d %s %s %

    注意事项

    本文(c语言实习 图书信息管理系统报告.doc)为本站会员(e****s)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

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




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开