c语言图书管理系统c++ 图书馆藏书管理系统

c语言图书管理系统  时间:2022-02-25  阅读:()

c++ 图书馆藏书管理系统

// 1221.cpp : 定义控制台应用程序的入口点。 // # include "stdafx.h" # include # include # include # include # include # include //***********定义一个书的结构体*********** struct book { long login_num;//登录号 char book_name[50];//书名 char book_author[20];//作者名 long book_sort;//分类号 char publisher[50];//出版单位 char pub_time[11];//出版时间 float price;//价格 book * next; }; //**********定义头指针和末指针************** book * Head,* End; //**************创建链表******************** void creat() { Head=(book *)malloc(sizeof(book)); End=(book *)malloc(sizeof(book)); Head->next=End; FILE * fp; if((fp=fopen("Book","rb"))==NULL) { printf("这是一个新的系统,欢迎使用! "); printf("按任意键继续。。。。 "); getch (); return ; } else { while(!feof(fp)) { fread(End,sizeof(book),1,fp); if(End->login_num <0) { break; } End=End->next =(book *)malloc(sizeof(book)); } } fclose (fp); } //**************增加节点******************** void add() { printf("请输入登录号:"); scanf("%ld",&End->login_num ); printf("请输入书名:"); scanf("%s",End->book_name ); printf("请输入作者名:"); scanf("%s",End->book_author ); printf("请输入分类号:"); scanf("%ld",&End->book_sort ); printf("请输入出版单位:"); scanf("%s",End->publisher ); printf("请输入出版时间:"); scanf("%s",End->pub_time ); printf("请输入价格:"); scanf("%f",&End->price ); End=End->next =(book *)malloc(sizeof(book)); } //**************查找节点******************** book * find()//返回上一个节点指针 { book * p=Head; char book_name[50]; printf("请输入书的名字:"); scanf("%s",book_name); getch (); while(p->next!=End) { if((strcmp(book_name,p->next ->book_name ))==0) { return p; } else { p=p->next ; } } printf("sorry !找不到! "); return NULL; } void find2() { book * p=find (); p=p->next ; if(p!=NULL) { printf("找到 "); printf("登录号:%5ld 书名:%20s 作者名:%15s 分类号:%5ld 出版单位:%20s 出版时间:%11s 价格:%f",p->login_num ,p->book_name ,p->book_author ,p->book_sort ,p->publisher ,p->pub_time ,p->price ); } } //**************删除节点******************** void del() { book * p=find(); if(p==NULL) { printf("删除失败!"); getch (); return ; } book * temp=p->next ; p->next=p->next ->next ; free (temp); printf("删除成功!"); getch (); return ; } //**************修改节点******************** void chance () { book * p=find(); if(p==NULL) { printf("sorry! 找不到该书!"); getch (); return ; } printf("请输入你要修改后的数据 "); p=p->next ; printf("请输入登录号:"); scanf("%ld",&p->login_num ); getch (); printf("请输入书名:"); scanf("%s",p->book_name ); getch (); printf("请输入作者名:"); scanf("%s",p->book_author ); getch (); printf("请输入分类号:"); scanf("%ld",&p->book_sort ); getch (); printf("请输入出版单位:"); scanf("%s",p->publisher ); getch (); printf("请输入出版时间:"); scanf("%s",p->pub_time ); getch (); printf("请输入价格:"); scanf("%f",&p->price ); getch (); printf("修改成功! "); getch (); return ; } //**************释放节点******************* void del_node() { book * p=NULL; while(Head!=End) { p=Head ; Head=Head->next ; free (p); } free (End); } //**************保存节点到文件************** void save () { book * p=Head->next ; FILE * fp; if((fp=fopen ("Book","wb"))==NULL) { printf("打开失败!"); getch (); return ; } while(p!=End) { fwrite(p,sizeof(book),1,fp); p=p->next ; } del_node (); fclose (fp); return ; } //******************打印当前图书信息************* void dispaly1 () { book * p=Head->next ; while(p!=End) { printf("登录号:%5ld 书名:%20s 作者名:%15s 分类号:%5ld 出版单位:%20s 出版时间:%11s 价格:%f",p->login_num ,p->book_name ,p->book_author ,p->book_sort ,p->publisher ,p->pub_time ,p->price ); printf(" "); p=p->next ; } } //*****************主界面函数**************** void dispaly2 () { printf("**************************欢迎使用本图书管理系统**************************** "); printf("******************** 1,增加图书信息 ******************** "); printf("******************** 2,查找图书信息 ******************** "); printf("******************** 3,删除图书信息 ******************** "); printf("******************** 4,修改图书信息 ******************** "); printf("******************** 5,打印图书信息 ******************** "); printf("******************** 6,安全退出系统 ******************** "); printf("**************************************************************************** "); } //**********************Main ******************* void main () { creat (); int choiece; while(1) { dispaly2 (); printf("请选择:"); scanf("%d",&choiece); switch (choiece) { case 1: add(); break; case 2: find2(); break; case 3: del (); break; case 4: chance (); break; case 5: dispaly1 (); break; case 6: { save (); return ; } default : printf("输入错误! "); } getch (); system("cls"); } } //这是一个c语言的,你把printf改为cout; 等等。。。 //相信你自己修改一下就可以了

npidc:9元/月,cn2线路(不限流量)云服务器,金盾+天机+傲盾防御CC攻击,美国/香港/韩国

npidc全称No Problem Network Co.,Limited(冇問題(香港)科技有限公司,今年4月注册的)正在搞云服务器和独立服务器促销,数据中心有香港、美国、韩国,走CN2+BGP线路无视高峰堵塞,而且不限制流量,支持自定义内存、CPU、硬盘、带宽等,采用金盾+天机+傲盾防御系统拦截CC攻击,非常适合建站等用途。活动链接:https://www.npidc.com/act.html...

Hostodo独立日提供四款特价年付VPS套餐 最低年付$13.99

前天,还有在"Hostodo商家提供两款大流量美国VPS主机 可选拉斯维加斯和迈阿密"文章中提到有提供两款流量较大的套餐,这里今天看到有发布四款庆祝独立日的七月份的活动,最低年付VPS主机13.99美元,如果有需要年付便宜VPS主机的可以选择商家。目前,Hostodo机房可选拉斯维加斯和迈阿密两个数据中心,且都是基于KVM虚拟+NVMe整列,年付送DirectAdmin授权,需要发工单申请。(如何...

特网云-新上线香港五区补货资源充足限时抢 虚拟主机6折,低至38元!

官方网站:点击访问特网云官网活动方案:===========================香港云限时购==============================支持Linux和Windows操作系统,配置都是可以自选的,非常的灵活,宽带充足新老客户活动期间新购活动款产品都可以享受续费折扣(只限在活动期间购买活动款产品才可享受续费折扣 优惠码:AADE01),购买折扣与续费折扣不叠加,都是在原价...

c语言图书管理系统为你推荐
bloomfilter电脑游戏图像设置里的Bloom是什么意思?md5值游戏安装包的MD5值怎么用?溢出隐藏关于CSS样式的问题,怎么可以让div的内容自动换行,溢出隐藏,还要加省略号?oncontextmenu如何禁用ImageButton的右键?查字网衾字怎么读音是什么网页微信客户端手机微信客户端怎么打开网页民生电商民生电商与传统的电商有什么区别?smartupload使用SmartUpload实现文件上传时需要对表单设置哪些属性layoutsubviewsios有没有类似tablayout的控件51信用卡论坛51信用卡怎么样?
vps优惠码 qq空间域名 主机评测 服务器怎么绑定域名 标准机柜尺寸 轻量 泉州移动 国外免费asp空间 in域名 双线asp空间 电信网络测速器 atom处理器 后门 网站防护 时间服务器 reboot 内存 byebyelove 云主机 qq空间论坛 更多