1、C程序专周报告 2011/05/30-2011/06/03辅导老师:王飞图书信息管理系统程序设计报告一、程序名称:图书信息管理系统。二、设计内容:通过近一个学期的C语言学习,编写一个小程序,以实现对图书的管理。用各种语句、结构体等,实现图书的输入、输出、修改等多种功能。三、设计目的:1、系统地对图书进行管理,便于图书管理人员管理。 四、设计流程: 开始运行主函数录入函数显示函数修改函数删除函数浏览函数排序函数主函数退出函数结束五、设计要求: :1、系统以菜单方式工作。 2、进入系统需要用户名和密码。 3、有图书信息录入功能。 4、有图书信息浏览功能。 5、有图书信息查询功能。 6、有图书借阅次
2、数排序功能。 7、有图书信息的删除和修改功能。 8、系统推出。六、软件使用:编写该程序使用的是Microsoft Visual C+。七、心得体会:通过此次编写图书信息管理系统程序,我学到了很多。也感触到了很多。“书上得来终觉浅,要知此事需躬行。”是呀!在没亲身动手去编写程序时,我总觉得我会了。书本上的我都懂了。可我真的懂了吗?答案是否定的。在编写过程中,会出现很多的问题,而这些问题你是在书本上是接触不到的。只有发现问题,解决问题,你才会有提高。有谁敢说我对C语言没有一点问题。没有,就连老师也不敢说这样的大话。我是打算报考计算机二级的,通过此次编程我看清了我在这方面的水平,那就是,我现在的水平
3、是远远达不到二级的。但这只是暂时的,下一阶段我会更加努力学习,我相信我会学好这们语言的。 附录1:参考文献1、C程序教程教程。(主编:孙淑霞)2、C实验与考级题训精解。(主编:戴彦群 于春)3、C程序设计。(主编:谭浩强)附录2:程序清单#include#include#include#includestruct books char name10; char no10; char writer10; char sno20; char price20; con50;int k=0;void enter();void ent();void display();void update();void
4、 del();void save();void read();int menu();/*主函数*/void main() int c; while(1) printf( nnnn); printf( 欢迎进入图书信息管理系统 nnn);printf( 1 进入系统 nn);printf( 0 退出系统 nn);printf( nnnn);printf( 10611 崔向伟(37)nn);printf( 2011-6-1);printf( 请输入您的选择: n);scanf(%d,&c); switch(c) case 1: ent(); break; case 0: printf( 谢谢使用!
5、n); exit(0); /* 登陆函数,进行密码验证 */void ent() char key10,password10=123;int k=1;printf( 请您输入密码: n);scanf(%s,key);while(k2) if(strcmp(password,key)=0) continue;else printf( 输入密码错误三次,系统将自动退出!n); exit(0);int menu()int a ; printf(nn *n); printf( *); printf(tt欢迎进入图书管理系统); printf(tt*); printf(n *n); printf( *)
6、; printf(t 1.输 入 图 书 信 息); printf(ttttt*n); printf( *); printf(t 2.显 示 图 书 信 息); printf(tttt*n); printf( *); printf(t 3.查 询 图 书 信 息); printf(tttt*n); printf( *); printf(t 4.删 除 图 书 信 息); printf(ttttt*n); printf( *); printf(t 5.储 存 图 书 信 息); printf(tttt*n); printf( *); printf(t 6.退 出 ); printf(ttttt*
7、n); printf( *n); printf( 输入你的选择 : ); scanf(%d,&a); return a; /*输入图书信息*/ void enter() char ch20;printf(n输入图书信息:n);do printf(n书名:n ); scanf(%s,conk.name); printf(书号: ); scanf(%s,conk.no); printf(n作者: ); scanf(%s,conk.writer); printf(n分类号: ); scanf(%s,conk.sno); printf(n价格: ); scanf(%s,conk.price); k+;
8、 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;ik;i+) printf(%10s %20s %10s %10s %10s ,coni.name,coni.no,coni.writer,coni.sno,coni.price); printf(n); /*查询与修改图书信息*/void update()int i;char
9、 a20,ch10; printf(n请 输 入 要 查 询 的 书 名:); scanf(%s,a); for(i=0;ik;i+) if(strcmp(coni.name,a)=0) printf(%10s %20s %10s %10s %10s ,coni.name,coni.no,coni.writer,coni.sno,coni.price); printf(n确 定 要 改 变 书 名? y/n): ); scanf(%s,ch); if(strcmp(ch,y)=0|strcmp(ch,Y)=0) printf(n输 入 要 改 变 的 书 名:); scanf(%s,a); f
10、or(i=0;ik;i+) if(strcmp(coni.name,a)=0) printf(n确 定 要 改 变 书 名(y/n): ); scanf(%s,ch); if(strcmp(ch,y)=0|strcmp(ch,Y)=0) printf(n书名:); scanf(%s,coni.name); printf(n确 定 要 改 的 书 号(y/n): ); scanf(%s,ch); if(strcmp(ch,y)=0|strcmp(ch,Y)=0) printf(n书号); scanf(%s,coni.no); printf(n确 定 要 改 的 作 者(y/n): ); scan
11、f(%s,ch); if(strcmp(ch,y)=0|strcmp(ch,Y)=0) printf(n作者); scanf(%s,coni.writer); printf(n确 定 要 改 的 分 类 号(y/n): ); scanf(%s,ch); if(strcmp(ch,y)=0|strcmp(ch,Y)=0) printf(n分类号); scanf(%s,coni.sno); printf(n确 定 要 改 的 价 格(y/n): ); scanf(%s,ch); if(strcmp(ch,y)=0|strcmp(ch,Y)=0) printf(n价格); scanf(%s,coni
12、.price); display();/*删除图书信息*/void del()int i,j;char c20; printf(n输 入 要 删 除 的 书 名 :n); printf(书名:); scanf(%s,&c); for(i=0;ik;i+) if(strcmp(c,coni.name)=0) break; for(j=i;j=2;j+) conj=conj+1; printf(ttt已 经 删 除 %sn,c); k-; display();/*文件写入数据*/void save() FILE *fp; int i; if(fp=fopen(123456.txt,wb)=NULL
13、) printf(操 作 文 件 失 败.n); exit(0); for(i=0;ik;i+) if(fwrite(&coni,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;ik;i+)if(fread(&coni,sizeof(struct books),1,fp)=1);elseprintf(读取文件出错);fclose(fp);exit(0);fclose(fp);return;
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100