亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? tushuguanguanli.txt

?? 多使用鏈表與指針,軟件課程設(shè)計使用
?? TXT
字號:
#include <stdio.h> 
#include <malloc.h> 
#include <conio.h> 
#include <string.h> 
#include <stdlib.h> 
#define LEN sizeof(struct booklist) 
#define LEN2 sizeof(struct memberlist) 
#define LEN3 sizeof(struct readers) 
typedef struct readers//借書信息結(jié)構(gòu)體 
{ 
	char name[30];//借書人的姓名 
	struct readers *next2; 
}	
	reader;  
	typedef struct booklist //書本信息結(jié)構(gòu)體
{ 
	char num[20]; //書號 
	char name[30]; //書名 
	char concern[50];//出版社 
	char date[20];//出版日期 
	char author[20];//作者 
	int page;//頁數(shù) 
	int price;//價格 
	int information;//圖書剩余數(shù)量 
	reader *a;//借閱人 
	struct booklist *next; 
}
	Book; 
	void creatlist();//創(chuàng)建新的書本信息 
	void print(Book *head);//打印書本信息 
	void save(Book *head);//儲存書本信息 
	void AddBook();//添加書本信息 
	void DelBook();//刪除書本信息 
	Book *read();//讀取書本信息 
	void manager();//管理員操作 
	void Bookconsult(); //圖書查詢 
	int Borrow();//借書 
	int Return();//還書 
	Book *sort(Book *head);//書本信息按書號排序 
	void information();//系統(tǒng)信息 

	Book *head=NULL,*p1=NULL,*p2=NULL; //創(chuàng)建新的書本信息 
void creatlist() 
{ 
	int i,n; 
	printf("要創(chuàng)建的書本數(shù)目"); 
	scanf("%d",&n); 
	p2=head=(Book *)malloc(LEN); //創(chuàng)建帶有頭結(jié)點的鏈表 
	p2->a=(reader *)malloc(LEN3); 
	p2->a->next2=NULL; 
	p2->next=NULL; 
	printf("請輸入書的信息:\n"); 
	for(i=1;i<=n;i++) 
	{ 
			p1=(Book *)malloc(LEN); 
			printf("書號: "); 
			scanf("%s",p1->num); 
			printf("書名: "); scanf("%s",p1->name); 
			printf("出版社: "); scanf("%s",p1->concern); 
			printf("出版日期: "); scanf("%s",p1->date); 
			printf("作者: "); scanf("%s",p1->author); 
			printf("書本頁數(shù): "); scanf("%d",&p1->page); 
			printf("書本價格(元): "); scanf("%d",&p1->price); 
			p1->a=(reader *)malloc(LEN3); 
			p1->a->next2=NULL; 
			p1->information=10; 
			p1->next=NULL; 
			p2->next=p1; 
			p2=p1; 
		if(i<n) printf("下一本:\n"); 
	} 
		head=sort(head); 
		save(head); 
		print(head); 
} 


//打印書本信息 
void print(Book *head) 
{ 
Book *p=NULL; 
reader *p0=NULL; 
p=head->next; 
printf("*******************************************************************************\n"); 
while(p!=NULL) 
{ 
printf("書號: %s\n書名: %s\n出版社: %s\n出版日期: %s\n作者: %s\n書本頁數(shù)(頁) : %d\n書本價格(元) : %d\n剩余數(shù)量 : %d\n",p->num,p->name,p->concern,p->date,p->author,p->page,p->price,p->information); 
printf("借閱圖書的人:"); 
if(p->a->next2==NULL) printf("------------暫無借閱人!"); 
else 
{ 
for(p0=p->a->next2;p0!=NULL;p0=p0->next2) 
{ 
printf("%s ",p0->name); 
} 
} 
p=p->next; /* p后移一個結(jié)點 */ 
printf("\n"); 
printf("\n"); 
} 
} 
//書本信息按書號排序 
Book *sort(Book *head) 
{ 
Book *p1=NULL,*p2=NULL,*p3=NULL,*min=NULL,*min2=NULL,*head2=head->next; 
p1=head2; 
while(p1->next!=NULL) 
{ 
min=p2=p1; /*把首結(jié)點作為最小值*/ 
while(p2->next!=NULL) 
{ 
if(strcmp(min->num,p2->next->num)>0) /*首結(jié)點與下一結(jié)點比較*/ 
{ 
min2=p2; 
min=p2->next; 
} 
p2=p2->next; 
} 
if(min!=p1) 
{ 
min2->next=min->next; /*刪除最小結(jié)點*/ 
min->next=p1; /*插入最小結(jié)點*/ 
if(p1==head2) head2=min; 
else p3->next=min; /*p3為min前的結(jié)點指針*/ 
p3=min; 
} 
else 
{ 
p3=p1; 
p1=p1->next; 
} 
} 
head->next=head2; 
return(head); 
} 
//儲存書本信息 
void save(Book *head) 
{ 
FILE *fp,*fp2; 
Book *p=NULL; 
reader *q=NULL; 
fp=fopen("書本信息.txt","wb"); //printf("不能打開文件!\n"); 
fp2=fopen("借閱信息.txt","wb"); //printf("不能打開文件!\n"); 
p=head; 
while(p!=NULL) 
{ 
fwrite(p,LEN,1,fp); /*逐個結(jié)點寫文件*/ 
for(q=p->a;q!=NULL;q=q->next2) 
{fwrite(q,LEN3,1,fp2);} 
p=p->next; 
} 
fclose(fp); 
fclose(fp2); 
} 
//添加書本信息 
void AddBook() 
{ 
FILE *fp,*fp2; 
Book *addbook=NULL; 
reader *p0=NULL; 
fp=fopen("書本信息.txt","ab"); //追加方式打開文件 
fp2=fopen("借閱信息.txt","ab"); 
addbook=(Book *)malloc(LEN); 
printf("輸入書本信息:\n"); 
printf("書號: "); scanf("%s",addbook->num); 
printf("書名: "); scanf("%s",addbook->name); 
printf("出版社: "); scanf("%s",addbook->concern); 
printf("出版日期: "); scanf("%s",addbook->date); 
printf("作者: "); scanf("%s",addbook->author); 
printf("書本頁數(shù): "); scanf("%d",&addbook->page); 
printf("書本價格(元): "); scanf("%d",&addbook->price); 
p0=(reader *)malloc(LEN3); 
p0->next2=NULL; 
addbook->a=p0; 
addbook->information=10; 
addbook->next=NULL; 
fwrite(addbook,LEN,1,fp); /*塊寫*/ 
fwrite(p0,LEN3,1,fp2); 
fclose(fp); 
fclose(fp2); 
} 
//讀取書本信息 
Book *read() 
{ 
FILE *fp,*fp2; 
Book *p=NULL,*p1=NULL,*head=NULL; 
reader *p0=NULL,*p2=NULL; 
if((fp=fopen("書本信息.txt","rb"))==NULL) printf("不能打開文件或文件不存在!\n"); 
if((fp2=fopen("借閱信息.txt","rb"))==NULL) printf("不能打開文件或文件不存在!\n"); 
head=(Book *)malloc(LEN); 
fread(head,LEN,1,fp); 
p1=head; 
p0=(reader *)malloc(LEN3); 
fread(p0,LEN3,1,fp2); 
p0->next2=NULL; 
head->a=p0; 
head->next=NULL; 
p=(Book *)malloc(LEN); 
while(fread(p,LEN,1,fp)) /*逐個結(jié)點讀取*/ 
{ 
p1->next=p; 
p1=p1->next; 
p0=(reader *)malloc(LEN3); 
p1->a=p0; 
while(fread(p0,LEN3,1,fp2)) 
{ 
if(p0->next2==NULL) 
{ 
p2=p0; 
p0=(reader *)malloc(LEN3); 
break; 
} 

p2=p0; 
p0=(reader *)malloc(LEN3); 
p2->next2=p0; 
} 
free(p0); 
p2->next2=NULL; 
p=(Book *)malloc(LEN); 
} 
p1->next=NULL; 
free(p); 
fclose(fp); 
fclose(fp2); 
head=sort(head); 
if(head!=NULL) return(head); 
else 
{ 
printf("文件為空!\n"); 
return 0; 
} 
} 
//刪除書本信息 
void DelBook() 
{ 
Book *head=NULL,*p=NULL,*q=NULL; 
char bookname[30]; 
head=read(); 
printf("輸入要刪除的書名: "); 
scanf("%s",bookname); 
p=head; 
while(p!=NULL)/*按名字查找要刪除的圖書*/ 
{ 
if(strcmp(p->name,bookname)==0) 
{ 
if(p==head) 
{ 
head=head->next; 
break; 
} 
else 
{ 
q->next=p->next; 
break; 
} 
} 
q=p; 
p=p->next; 
} 
save(head); 
} 
//管理員操作 
void manager() 
{ 
int n,i=0,k=1; 
while(k==1) 
{ 
printf("********************************************************************************\n"); 
printf(" 請選擇你需要的操作\n"); 
printf(" ◎ 1.建立新的書本信息\n"); 
printf(" ◎ 2.插入書本信息\n"); 
printf(" ◎ 3.刪除書本信息\n"); 
printf(" ◎ 4.讀取所有書本信息\n"); 
printf(" ◎ 5.讀取指定書本信息\n"); 
printf(" ◎ 6.返回到上級目錄\n"); 
printf(" ◎ 7.保存并退出\n"); 
printf("請輸入:"); 
scanf("%d",&n); 
switch(n) 
{ 
case 1: creatlist();break; 
case 2: AddBook();break; 
case 3: DelBook();break; 
case 4: head=read();system("CLS");print(head);break; 
case 5: system("CLS");Bookconsult();break; 
case 6: k=0;break; 
default: k=0;break; 
} 
} 
} 


//圖書查詢 
void Bookconsult() 
{ 
int n,m=1,sign=0; 
Book *p=NULL,*p1=NULL,*p0=NULL,*head=NULL; 
reader *p2=NULL; 
char a[30],b[20],c[20]; 
head=read(); 
while(m==1) 
{ 
printf(" 請選擇你查詢書本的方式: 1.按書名 2.按書的編號 3.按書的作者 4.退出查詢\n"); 
printf("輸入="); 
scanf("%d",&n); 
switch(n) 
{ 
case 1: printf("請輸入書名:"); 
scanf("%s",a); 
p0=head; 
while(p0!=NULL) 
{ 
if(strcmp(a,p0->name)==0) 
{ 
printf("*******************************************************************************\n"); 
printf("書號: %s\n書名: %s\n出版社: %s\n出版日期: %s\n作者: %s\n書本頁數(shù)(頁) : %d\n書本價格(元) : %d\n剩余數(shù)量 : %d\n",p0->num,p0->name,p0->concern,p0->date,p0->author,p0->page,p0->price,p0->information); 
printf("借閱圖書的人:"); 
if(p0->a->next2==NULL) printf("------------暫無借閱人!\n"); 
else 
{ 
for(p2=p0->a;(p2=p2->next2)!=NULL;) 
{printf("%s ",p2->name);} 
} 
printf("\n"); 
sign=1; 
p0=p0->next; 
} 
else p0=p0->next; 
} 
if(sign==0) printf("沒有這本書的信息.\n"); 
break; 
case 2: printf("請輸入書的編號:"); 
scanf("%s",b); 
p0=head; 
while(p0!=NULL) 
{ 
if(strcmp(b,p0->num)==0) 
{ 
printf("*******************************************************************************\n"); 
printf("書號: %s\n書名: %s\n出版社: %s\n出版日期: %s\n作者: %s\n書本頁數(shù)(頁) : %d\n書本價格(元) : %d\n剩余數(shù)量 : %d\n",p0->num,p0->name,p0->concern,p0->date,p0->author,p0->page,p0->price,p0->information); 
printf("借閱圖書的人:"); 
if(p0->a->next2==NULL) printf("------------暫無借閱人!\n"); 
else 
{ 
for(p2=p0->a;(p2=p2->next2)!=NULL;) 
{printf("%s ",p2->name);} 
} 
printf("\n"); 
break; 
} 
else p0=p0->next; 
} 
if(p0==NULL) printf("沒有這本書的信息.\n"); 
break; 
case 3: printf("請輸入書的作者:"); 
scanf("%s",c); 
p0=head; 
while(p0!=NULL) 
{ 
if(strcmp(c,p0->author)==0) 
{ 
printf 

("*******************************************************************************\n"); 
printf("書號: %s\n書名: %s\n出版社: %s\n出版日期: %s\n作者: %s\n書本頁數(shù)(頁) : %d\n書本價格(元) %d\n剩余數(shù)量 : %d\n",p0->num,p0->name,p0->concern,p0->date,p0->author,p0->page,p0->price,p0->information); 
printf("借閱圖書的人:"); 
if(p0->a->next2==NULL) printf("------------暫無借閱人!\n"); 
else 
{ 
for(p2=p0->a;(p2=p2->next2)!=NULL;) 
{printf("%s ",p2->name);} 
} 
printf("\n"); 
sign=1; 
p0=p0->next; 
} 
else p0=p0->next; 
} 
if(sign==0) printf("沒有這本書的信息.\n"); 
break; 
default: m=0;break; 
} 
} 
} 


//借書 
int Borrow() 
{ 
char a[30],b[30],c; 
Book *p0=NULL,*head=NULL; 
reader *p2=NULL,*p3=NULL; 
head=read(); 
printf("請輸入要借的書的書號:"); 
scanf("%s",a); 
p0=head->next; 
while(p0!=NULL) 
{ 
if((strcmp(a,p0->num))==0) 
{ 
if(p0->information>0) 
{ 
printf("圖書在館,可以借出,是否確定借出?'y'or'n'\n"); 
c=getchar(); 
scanf("%c",&c); 
if(c=='y') 
{ 
printf("請再次輸入你的用戶名:"); 
scanf("%s",b); 
p3=(reader *)malloc(LEN3); 
strcpy(p3->name,b); 
if(p0->a->next2==NULL) 
{ 
p0->a->next2=p3; 
p3->next2=NULL; 
} 
else 
{ 
for(p2=p0->a;p2->next2!=NULL;p2=p2->next2); 
p2->next2=p3; 
p3->next2=NULL; 
} 
--p0->information; 
save(head); 
printf("操作完成,可以帶走圖書。\n"); 
return 1; 
break; 
} 
else 
{ 
return 0; 
break; 
} 
} 
else printf("很抱歉,該圖書不在館.\n");return 0;break; 
} 
else p0=p0->next; 
} 
if(p0==NULL) 
{ 
printf("很抱歉,沒有這本書。\n"); 
return 0; 
} 
else return 2; 
} 

//還書 
int Return() 
{ 
Book *p0=NULL,*head=NULL; 
reader *p2=NULL,*p3=NULL; 
char c[20],b[30]; 
head=read(); 
printf("請輸入要還的書的書號:"); 
scanf("%s",&c); 
p0=head->next; 
while(p0!=NULL) 
{ 
if((strcmp(c,p0->num))==0) 
{ 
printf("請輸入你的用戶名:"); 
scanf("%s",&b); 
if(p0->a->next2==NULL) {printf("你沒有借這本書!\n");break;} 
else 
{ 
p3=p0->a; 
p2=p3->next2; 
while(p2!=NULL) 
{ 
if(strcmp(p2->name,b)==0) 
{ 
if(p2->next2==NULL) {p3->next2=NULL;free(p2);break;} 
else 
{ 
p3->next2=p2->next2; 
free(p2); 
break; 
} 
} 
else 
{ 
p3=p2; 
p2=p2->next2; 
} 
} 
if(p2==NULL) printf("你沒有借這本書!\n"); 
} 
++p0->information; 
save(head); 
printf("書已歸館,操作完成。\n"); 
return 1; 
break; 
} 
else p0=p0->next; 
} 
if(p0==NULL) 
{ 
printf("沒有這本書。\n"); 
return 0; 
} 
else return 2; 
} 
//借書信息 
void information() 
{ 
printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n"); 
printf("※ 歡迎你使用我們的圖書管理系統(tǒng)!以下是本系統(tǒng)的有關(guān)說明: ※\n"); 
printf("※本系統(tǒng)主要功能是進行圖書的有關(guān)管理,你可以進行圖書信息的創(chuàng)建、插入、刪除、 ※\n"); 
printf("※查詢;在操作中主要是以阿拉伯數(shù)字來選擇相應(yīng)的菜單功能,在選擇時以'y'表示 '是' ※\n"); 
printf("※以'n'表示'不是'。在你操作的時候就會有相應(yīng)的操作提示。 ※\n"); 
printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n"); 
} 

main() 

{ 
int n,k=1; 
printf("********************************************************************************\n"); 
printf("\n\n"); 
printf(" 歡迎進入我們的圖書管理系統(tǒng)! \n"); 
printf("\n\n"); 
printf("********************************************************************************\n"); 
while(k==1) 
{ 
printf(" 請選擇你的操作: 1.管理員操作 2.系統(tǒng)信息 3.退出系統(tǒng)\n"); 
printf("********************************************************************************\n"); 
printf(" 你的選擇是:"); 
scanf("%d",&n); 
system("CLS"); 
switch(n) 
{ 
case 1: manager();break; 
case 2: information();break; 
default: printf("+++++++++++++++++++++++++++歡迎你再次使用我們的系統(tǒng)!++++++++++++++++++++++++++++\n");k=0;break; 
} 
} 

}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
三级欧美在线一区| 国产精品1区2区| 懂色av一区二区三区蜜臀| 欧美在线一区二区| 亚洲精品日产精品乱码不卡| 成人禁用看黄a在线| 欧美色区777第一页| 久久综合色婷婷| 亚欧色一区w666天堂| 国产不卡视频一区| 欧美一级免费观看| 国产精品成人一区二区三区夜夜夜| 精品91自产拍在线观看一区| 亚洲国产你懂的| 成人国产在线观看| 欧美一区二区视频在线观看2020| 精品捆绑美女sm三区| 午夜视频久久久久久| 色综合天天天天做夜夜夜夜做| 欧美日韩dvd在线观看| 国产精品国产三级国产a| 全国精品久久少妇| 99久久99久久精品免费观看 | 午夜精品一区二区三区免费视频| 亚洲黄色片在线观看| 久久久噜噜噜久久人人看| 久久综合色鬼综合色| 精品久久久久久综合日本欧美| 精品国产乱码久久久久久久 | 丁香六月综合激情| 成人av综合一区| 色香色香欲天天天影视综合网| 在线观看一区日韩| 日韩女优毛片在线| 国产人伦精品一区二区| 17c精品麻豆一区二区免费| 亚洲综合免费观看高清在线观看| 视频一区视频二区在线观看| 国产一区二三区好的| 97se亚洲国产综合自在线观| 欧美日韩美女一区二区| 日韩欧美国产成人一区二区| 久久久精品中文字幕麻豆发布| 日韩理论片一区二区| 五月激情六月综合| 国产精品1024| 欧美日韩国产中文| 国产精品美女久久久久久2018| 亚洲丶国产丶欧美一区二区三区| 韩国在线一区二区| 欧美亚洲一区二区在线观看| 久久久久亚洲蜜桃| 亚洲成人综合网站| 99久久久久久| 国产午夜一区二区三区| 婷婷久久综合九色综合绿巨人| 成人高清免费观看| 日韩美女一区二区三区四区| 一区二区三区美女视频| 九色porny丨国产精品| 在线亚洲高清视频| 国产精品日韩成人| 激情综合网激情| 777a∨成人精品桃花网| 亚洲精品自拍动漫在线| 国产麻豆一精品一av一免费| 欧美日韩成人综合天天影院| 最近中文字幕一区二区三区| 国产成人免费视频网站| 久久只精品国产| 日本vs亚洲vs韩国一区三区| 欧美四级电影在线观看| 曰韩精品一区二区| 91免费观看视频在线| 亚洲国产成人一区二区三区| 精品亚洲成av人在线观看| 制服丝袜激情欧洲亚洲| 日韩和欧美的一区| 欧美日韩亚洲综合一区| 一区二区三区久久| 一本久道久久综合中文字幕 | 在线视频国内一区二区| 亚洲欧美日韩中文字幕一区二区三区 | 欧美日韩免费观看一区三区| 一区二区三区视频在线观看| 色综合天天综合色综合av| 亚洲黄色片在线观看| 欧美主播一区二区三区| 天堂蜜桃91精品| 欧美三级三级三级爽爽爽| 99精品国产99久久久久久白柏| 欧美高清在线一区| 成人精品国产一区二区4080| 中文字幕一区在线观看| a级高清视频欧美日韩| 亚洲人成网站影音先锋播放| 99视频精品全部免费在线| 亚洲精品免费在线播放| 欧美系列在线观看| 免费在线欧美视频| 精品久久久久久亚洲综合网| 波多野结衣中文字幕一区二区三区| 久久精品欧美日韩精品| 北条麻妃一区二区三区| 亚洲黄色免费电影| 制服丝袜在线91| 高清视频一区二区| 亚洲精品久久久蜜桃| 日韩亚洲欧美综合| 成人一级视频在线观看| 亚洲精品久久久久久国产精华液| 欧美精品 日韩| 国产91精品在线观看| 一区二区三区四区精品在线视频 | 69堂亚洲精品首页| 国产成人啪免费观看软件| 亚洲伦在线观看| 欧美tickling挠脚心丨vk| 色中色一区二区| 九九国产精品视频| 一区二区三区精品视频在线| 精品奇米国产一区二区三区| 一本色道久久加勒比精品 | 精品日韩一区二区三区| 成人午夜av电影| 秋霞国产午夜精品免费视频| 最新不卡av在线| 久久亚洲综合色| 欧美日韩精品一区二区三区| 成人激情文学综合网| 久久www免费人成看片高清| 亚洲婷婷综合久久一本伊一区| 精品免费国产二区三区| 欧美色大人视频| 91农村精品一区二区在线| 久久er精品视频| 人妖欧美一区二区| 亚洲电影中文字幕在线观看| 中文字幕一区二区三区色视频| 精品国产乱码久久久久久牛牛| 911精品产国品一二三产区| 色综合久久久久综合| 成人激情免费网站| 国产一区二区精品在线观看| 青青草国产成人99久久| 天堂va蜜桃一区二区三区漫画版| 亚洲激情网站免费观看| 专区另类欧美日韩| 综合欧美一区二区三区| 国产精品欧美久久久久无广告 | 欧美人妖巨大在线| 91尤物视频在线观看| 成人高清av在线| 不卡的av网站| 99re66热这里只有精品3直播| 国产精品91xxx| 粉嫩av亚洲一区二区图片| 国产精品一级在线| 紧缚奴在线一区二区三区| 久久成人免费网站| 国产一区高清在线| 国产.欧美.日韩| 不卡av电影在线播放| 99精品国产99久久久久久白柏 | 欧洲在线/亚洲| 日本高清成人免费播放| 91久久精品网| 欧美精品vⅰdeose4hd| 日韩欧美国产一区二区三区 | 亚洲欧洲精品天堂一级| 亚洲欧美日韩一区| 亚洲欧美日韩国产中文在线| 一级特黄大欧美久久久| 日av在线不卡| 国产99久久久国产精品免费看 | 日韩一区二区电影| 久久综合视频网| 亚洲精品久久久蜜桃| 丝袜美腿一区二区三区| 国产在线观看免费一区| av高清不卡在线| 欧美日韩高清在线| 亚洲精品在线免费播放| 中文字幕在线观看一区二区| 亚洲一卡二卡三卡四卡| 韩国欧美国产1区| 91香蕉视频黄| 日韩美女主播在线视频一区二区三区| 国产三级三级三级精品8ⅰ区| 中文字幕一区二区三区蜜月 | 久久久精品综合| 亚洲一区二区三区激情| 国产一区二区三区四区五区美女| 成人不卡免费av| 精品久久国产字幕高潮| 一区二区三区在线视频免费观看| 精品久久国产老人久久综合| 日韩你懂的电影在线观看| 中文字幕一区二区三区四区不卡| 日韩精品91亚洲二区在线观看 |