c 图书馆藏书管理系统。怎么办?
"// 1221。cpp : 定义控制台应用程序的入口点。//# include "stdafx。h"# include # include # include # include # include # include //***********定义1个书的结构体***********struct book{ long login_num;//登陆号 char book_name[50];//书名 char book_author[20];//作者名 long book_sort;//分类号 char publisher[50];//出版单位 char pub_time[11];//出版...全部
"// 1221。cpp : 定义控制台应用程序的入口点。//# include "stdafx。h"# include # include # include # include # include # include //***********定义1个书的结构体***********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("这是1个新的系统(System),欢迎用!
"); printf("按任意键继续。
。。。
"); getch (); return ; } else { while(!feof(fp)) { fread(End,sizeof(book),1,fp); if(End->login_num 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()//返回上1个节点指针{ 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 书名: s
作者名:s 分类号:%5ld
出版单位: s 出版时间:s 价钱:%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("打开(OPEN)失败!"); 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 书名: s
作者名:s 分类号:%5ld
出版单位: s 出版时间:s 价钱:%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("**************************欢迎用本图书管理系统(System)****************************
"); printf("******************** 1,增加图书信息 ********************
"); printf("******************** 2,查找图书信息 ********************
"); printf("******************** 3,删掉图书信息 ********************
"); printf("******************** 4,修改图书信息 ********************
"); printf("******************** 5,打印图书信息 ********************
"); printf("******************** 6,安全退出系统(System) ********************
"); 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"); }}//这是1个C语言的,你把printf改为cout;等等。
。。//相信你自己修改一下就可以了"。收起