收藏 分销(赏)

用C语言编写的图书管理系统知识分享.doc

上传人:w****g 文档编号:4119506 上传时间:2024-07-30 格式:DOC 页数:11 大小:37.50KB 下载积分:8 金币
下载 相关 举报
用C语言编写的图书管理系统知识分享.doc_第1页
第1页 / 共11页
用C语言编写的图书管理系统知识分享.doc_第2页
第2页 / 共11页


点击查看更多>>
资源描述
C 程 序 专 周 报 告 2011/05/30-2011/06/03 辅导老师:王飞 图书信息管理系统程序设计报告 一、程序名称:图书信息管理系统。 二、设计内容:通过近一个学期的C语言学习,编写一个小程序,以实现对图书的管理。用各种语句、结构体等,实现图书的输入、输出、修改等多种功能。 三、设计目的:1、系统地对图书进行管理,便于图书管理人员管理。 四、设计流程: 开始运行 主函数 录 入 函 数 显 示 函 数 修 改 函 数 删 除 函 数 浏 览 函 数 排 序 函 数 主函数 退出函数 结束 五、设计要求: :1、系统以菜单方式工作。 2、进入系统需要用户名和密码。 3、有图书信息录入功能。 4、有图书信息浏览功能。 5、有图书信息查询功能。 6、有图书借阅次数排序功能。 7、有图书信息的删除和修改功能。 8、系统推出。 六、软件使用:编写该程序使用的是Microsoft Visual C++。 七、心得体会:通过此次编写图书信息管理系统程序,我学到了很多。也感触到了很多。“书上得来终觉浅,要知此事需躬行。”是呀!在没亲身动手去编写程序时,我总觉得我会了。书本上的我都懂了。可我真的懂了吗?答案是否定的。在编写过程中,会出现很多的问题,而这些问题你是在书本上是接触不到的。只有发现问题,解决问题,你才会有提高。有谁敢说我对C语言没有一点问题。没有,就连老师也不敢说这样的大话。我是打算报考计算机二级的,通过此次编程我看清了我在这方面的水平,那就是,我现在的水平是远远达不到二级的。但这只是暂时的,下一阶段我会更加努力学习,我相信我会学好这们语言的。 附录1:参考文献 1、C程序教程教程。(主编:孙淑霞) 2、C实验与考级题训精解。(主编:戴彦群 于春) 3、C程序设计。(主编:谭浩强) 附录2:程序清单 #include<stdio.h> #include<string.h> #include<stdlib.h> #include<conio.h> struct books { char name[10]; char no[10]; char writer[10]; char sno[20]; char price[20]; }con[50]; int k=0; void enter(); void ent(); void display(); void update(); void del(); void save(); void read(); int menu(); /********************************主函数***************************************/ void main() { int c; while(1) { printf(" \n\n\n\n"); printf(" 欢迎进入图书信息管理系统 \n\n\n"); printf(" 1 进入系统 \n\n"); printf(" 0 退出系统 \n\n"); printf(" \n\n\n\n"); printf(" 10611 崔向伟(37)\n\n"); printf(" 2011-6-1"); printf(" 请输入您的选择: \n"); scanf("%d",&c); switch(c) { case 1: ent(); break; case 0: printf(" 谢谢使用!\n"); exit(0); } } } /******************* 登陆函数,进行密码验证 *******************/ void ent() { char key[10],password[10]="123"; int k=1; printf(" 请您输入密码: \n"); scanf("%s",key); while(k<=3) { if(strcmp(password,key)==0) { while(1) { int a; a=menu(); switch(a) { case 1:printf("\n");enter();break; case 2:printf("\n");display();break; case 3:printf("\n");update();break; case 4:printf("\n");del();break; case 5:printf("\n");save();break; case 6:printf("\n");exit(0);break; default:printf("\nThe choice is between 1 to 6.\n"); } } } else { k++; printf(" 密码错误!请再次输入:"); scanf("%s",key); if(k>2) { if(strcmp(password,key)==0) continue; else { printf(" 输入密码错误三次,系统将自动退出!\n"); exit(0); } } } } } int menu() { int a ; printf("\n\n ******************************************************************\n"); printf(" *"); printf("\t\t欢迎进入图书管理系统"); printf("\t\t*"); printf("\n ******************************************************************\n"); printf(" *"); printf("\t 1.输 入 图 书 信 息"); printf("\t\t\t\t\t*\n"); printf(" *"); printf("\t 2.显 示 图 书 信 息"); printf("\t\t\t\t*\n"); printf(" *"); printf("\t 3.查 询 图 书 信 息"); printf("\t\t\t\t*\n"); printf(" *"); printf("\t 4.删 除 图 书 信 息"); printf("\t\t\t\t\t*\n"); printf(" *"); printf("\t 5.储 存 图 书 信 息"); printf("\t\t\t\t*\n"); printf(" *"); printf("\t 6.退 出 "); printf("\t\t\t\t\t*\n"); printf(" ******************************************************************\n"); printf(" 输入你的选择 : "); scanf("%d",&a); return a; } /******************************输入图书信息***********************************/ void enter() { char ch[20]; printf("\n输入图书信息:\n"); do { printf("\n书名:\n "); scanf("%s",con[k].name); printf("书号: "); scanf("%s",con[k].no); printf("\n作者: "); scanf("%s",con[k].writer); printf("\n分类号: "); scanf("%s",con[k].sno); printf("\n价格: "); scanf("%s",con[k].price); k++; printf("\n是 否 继 续 输 入 图 书 信 息(y/n): "); scanf("%s",ch); }while(strcmp(ch,"y")==0||strcmp(ch,"Y")==0); } /****************************显示图书信息*************************************/ void display() { int i; read(); printf(" 图 书 信 息 如 下:\n"); for(i=0;i<k;i++) { printf("%10s %20s %10s %10s %10s ",con[i].name,con[i].no,con[i].writer,con[i].sno,con[i].price); printf("\n"); } } /*****************************查询与修改图书信息******************************/ void update() { int i; char a[20],ch[10]; printf("\n请 输 入 要 查 询 的 书 名:"); scanf("%s",a); for(i=0;i<k;i++) if(strcmp(con[i].name,a)==0) printf("%10s %20s %10s %10s %10s ",con[i].name,con[i].no,con[i].writer,con[i].sno,con[i].price); printf("\n确 定 要 改 变 书 名? y/n): "); scanf("%s",ch); if(strcmp(ch,"y")==0||strcmp(ch,"Y")==0) { printf("\n输 入 要 改 变 的 书 名:"); scanf("%s",a); for(i=0;i<k;i++) { if(strcmp(con[i].name,a)==0) { printf("\n确 定 要 改 变 书 名(y/n): "); scanf("%s",ch); if(strcmp(ch,"y")==0||strcmp(ch,"Y")==0) { printf("\n书名:"); scanf("%s",con[i].name);} printf("\n确 定 要 改 的 书 号(y/n): "); scanf("%s",ch); if(strcmp(ch,"y")==0||strcmp(ch,"Y")==0) { printf("\n书号"); scanf("%s",con[i].no);} printf("\n确 定 要 改 的 作 者(y/n): "); scanf("%s",ch); if(strcmp(ch,"y")==0||strcmp(ch,"Y")==0) { printf("\n作者"); scanf("%s",con[i].writer);} printf("\n确 定 要 改 的 分 类 号(y/n): "); scanf("%s",ch); if(strcmp(ch,"y")==0||strcmp(ch,"Y")==0) { printf("\n分类号"); scanf("%s",con[i].sno);} printf("\n确 定 要 改 的 价 格(y/n): "); scanf("%s",ch); if(strcmp(ch,"y")==0||strcmp(ch,"Y")==0) { printf("\n价格"); scanf("%s",con[i].price);} } } } display(); } /**********************************删除图书信息*******************************/ void del() { int i,j; char c[20]; printf("\n输 入 要 删 除 的 书 名 :\n"); printf("书名:"); scanf("%s",&c); for(i=0;i<k;i++) if(strcmp(c,con[i].name)==0) break; for(j=i;j<=2;j++) con[j]=con[j+1]; printf("\t\t\t已 经 删 除 %s\n",c); k--; display(); } /******************************文件写入数据**********************************/ void save() { FILE *fp; int i; if((fp=fopen("123456.txt","wb"))==NULL) { printf("操 作 文 件 失 败.\n"); exit(0); } for(i=0;i<k;i++) if(fwrite(&con[i],sizeof(struct books),1,fp)!=1) { printf("写入文件失败"); fclose(fp); exit(0); } printf("写入成功"); fclose(fp); } /***********************************文件读取数据******************************/ void read() { FILE *fp; int i; if((fp=fopen("123456.txt","rb"))==NULL) { printf("不能打开文件"); exit(0); } for(i=0;i<k;i++) if(fread(&con[i],sizeof(struct books),1,fp)==1); else { printf("读取文件出错"); fclose(fp); exit(0); } fclose(fp); return; }
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服