當前位置:歷史故事大全網 - 圖書館 - 圖書制作信息管理系統

圖書制作信息管理系統

我希望妳滿意。

# include & ltstdio.h & gt

# include & ltstdlib.h & gt

# include & ltstring.h & gt

結構書{

人物姓名[20],作者[20],出版社[20];

int數,價格;

struct book * next

};

添加()

{

FILE * fp

結構書*頭,*新,*當前;

int i,n,k=0,j;

clr SCR();

head=new=(結構書*)malloc(sizeof(結構書));

printf("妳想加幾本書?\ n ");

scanf("%d ",& ampn);

getchar();

for(I = 1;我& lt= n;i++)

{

printf("請輸入%dst '圖書的名稱!\n”,I);

fgets(新-& gt;姓名,20,stdin);

printf("輸入作者姓名!\ n ");

fgets(新-& gt;作者,20,stdin);

printf("出版社的名字!\ n ");

fgets(新-& gt;press,20,stdin);

printf("書的價格!註意價格的類型必須是' int ' \ n ");

scanf("%d ",& amp新建-& gt;價格);

printf("書的數量!註意數字不能是'-1 ' \ n ");

scanf("%d ",& amp新建-& gt;號);

getchar();

strlwr(新-& gt;姓名);

strlwr(新-& gt;作者);

strlwr(新-& gt;按);

clr SCR();

如果(我!=n)

new = new-& gt;next=(結構書*)malloc(sizeof(結構書));

}

新建-& gt;next = NULL

if((fp=fopen("E:\\book "," r "))!=空)

{

而(!feof(fp))

{

k++;

如果(k==1)

current=new=(結構書*)malloc(sizeof(結構書));

其他

new = new-& gt;next=(結構書*)malloc(sizeof(結構書));

fgets(新-& gt;名字,20,FP);

fgets(新-& gt;作者,20,FP);

fgets(新-& gt;press,20,FP);

fscanf(fp," %d,%d\n ",& amp新建-& gt;價格& amp新建-& gt;號);

}

n = n+k;

新建-& gt;下壹個=頭;

水頭=電流;

}

reapt:new = head;

for(I = 1;我& lt= n-1;i++)

{

k =新-& gt;號碼;

當前=新-& gt;接下來;

for(j = 1;j & lt= n-I;j++)

{

if(k = = current-& gt;編號)

{

printf("抱歉!妳放了同樣的號碼!\ n ");

printf("所以您應該再次輸入\"%s\ "數字\n ",current-& gt;姓名);

scanf("%d ",t-& gt;號);

goto reapt

}

電流=電流-& gt;接下來;

}

new = new-& gt;接下來;

}

fclose(FP);

fp=fopen("E:\\book "," w ");

新=頭;

for(I = 1;我& lt= n;i++)

{

fprintf(fp," %s%s%s ",new-& gt;名字,新-& gt;作者,新-& gt;按);

fprintf(fp," %d,%d\n ",new-& gt;價格,新-& gt;號);

new = new-& gt;接下來;

免費(頭);

頭=新;

}

fclose(FP);

}

正確()

{

FILE * fp

結構書*頭,*新,*廟;

int i=0,j=0,n,m=-1,k = 0;

char c[20];

clr SCR();

head=new=(結構書*)malloc(sizeof(結構書));

printf("您想更正哪個bood?\ n ");

printf("如果您想輸入數字,請按' 1 ',如果您想輸入出版社、作者、姓名,請按' 2 '!\ n ");

scanf("%d ",& ampn);

getchar();

如果(n==1)

{

printf("請輸入數字!\ n ");

scanf("%d ",& ampm);

getchar();

}

其他

{

printf("請輸入姓名或作者或出版社\ n ");

fgets(c,20,stdin);

strl wr(c);

}

clr SCR();

fp=fopen("E:\\book "," r ");

而(!feof(fp))

{

i++;

fgets(新-& gt;名字,20,FP);

fgets(新-& gt;作者,20,FP);

fgets(新-& gt;press,20,FP);

fscanf(fp," %d,%d\n ",& amp新建-& gt;價格& amp新建-& gt;號);

if((new-& gt;number = = m)| |(strcmp(new-& gt;name,c)= = 0)| |(strcmp(new-& gt;author,c)= = 0)| |(strcmp(new-& gt;按下,c)==0))

k++;

temple = new

new = new-& gt;next=(結構書*)malloc(sizeof(結構書));

}

fclose(FP);

免費(新);

坦普爾->;next = NULL

新=頭;

如果(k==0)

{

printf("沒有這本書!\ n ");

for(j = 1;j & lt= I;j++)

{

new = new-& gt;接下來;

免費(頭);

頭=新;

}

}

if(k & gt;1)

{

printf("有%d本書滿足您的需求,您需要輸入書號!\n”,k);

scanf("%d ",& ampm);

getchar();

for(j = 0;j & lt=19;j++)

c[j]= ' A ';

}

如果(k!=0)

{

fp=fopen("E:\\book "," w ");

for(j = 1;j & lt= I;j++)

{

if((new-& gt;number = = m)| |(strcmp(new-& gt;name,c)= = 0)| |(strcmp(new-& gt;author,c)= = 0)| |(strcmp(new-& gt;按下,c)==0))

{

printf("請輸入圖書名稱!\ n ");

fgets(新-& gt;姓名,20,stdin);

printf("輸入作者姓名!\ n ");

fgets(新-& gt;作者,20,stdin);

printf("出版社的名字!\ n ");

fgets(新-& gt;press,20,stdin);

printf("書的價格!註意價格的類型必須是' int ' \ n ");

scanf("%d ",& amp新建-& gt;價格);

getchar();

clr SCR();

strlwr(新-& gt;姓名);

strlwr(新-& gt;作者);

strlwr(新-& gt;按);

}

fprintf(fp," %s%s%s ",new-& gt;名字,新-& gt;作者,新-& gt;按);

fprintf(fp," %d,%d\n ",new-& gt;價格,新-& gt;號);

new = new-& gt;接下來;

免費(頭);

頭=新;

}

fclose(FP);

}

}

刪除()

{

FILE * fp

結構書*頭,*新,*廟;

int i=0,j=0,n,k=0,m =-1;

char c[20];

clr SCR();

printf("妳想搜索哪本書?如果您想輸入數字,請按' 1 ',如果您想輸入出版社,作者,姓名,請按' 2 '!\ n ");

scanf("%d ",& ampn);

getchar();

如果(n==1)

{

printf("請輸入數字!\ n ");

scanf("%d ",& ampm);

}

其他

{

printf("請輸入姓名或作者或出版社\ n ");

fgets(c,20,stdin);

strl wr(c);

}

clr SCR();

fp=fopen("E:\\book "," r ");

而(!feof(fp))

{

i++;

if(i==1)

head=new=(結構書*)malloc(sizeof(結構書));

其他

new = new-& gt;next=(結構書*)malloc(sizeof(結構書));

fgets(新-& gt;名字,20,FP);

fgets(新-& gt;作者,20,FP);

fgets(新-& gt;press,20,FP);

fscanf(fp," %d,%d\n ",& amp新建-& gt;價格& amp新建-& gt;號);

if((new-& gt;number = = m)| |(strcmp(new-& gt;name,c)= = 0)| |(strcmp(new-& gt;author,c)= = 0)| |(strcmp(new-& gt;按下,c)==0))

k++;

}

fclose(FP);

新建-& gt;next = NULL

新=頭;

if(k & gt;1)

{

printf("因為有%d本書滿足妳的需求,所以妳必須輸入數量\n ",k);

scanf("%d ",& ampm);

}

如果(k!=0)

{

fp=fopen("E:\\book "," w ");

for(j = 1;j & lt= I;j++)

{

if((m = =-1)& amp;& amp((strcmp(new-& gt;name,c)= = 0)| |(strcmp(new-& gt;author,c)= = 0)| |(strcmp(head-& gt;按下,c)==0)))

{

temple = new-& gt;接下來;

免費(新);

new = temple

繼續;

}

if(新建-& gt;數量==m)

{

temple = new-& gt;接下來;

免費(新);

new = temple

繼續;

}

fprintf(fp," %s%s%s ",new-& gt;名字,新-& gt;作者,新-& gt;按);

fprintf(fp," %d,%d\n ",new-& gt;價格,新-& gt;號);

temple = new-& gt;接下來;

免費(新);

new = temple

}

fclose(FP);

}

}

搜索()

{

FILE * fp

int i=0,n,m=-1,k = 0;

struct book * head =(struct book *)malloc(size of(struct book));

char c[20];

head->;next = NULL

printf("妳想搜索哪本書?如果您想輸入數字,請按' 1 ',如果您想輸入出版社,作者,姓名,請按' 2 '!\ n ");

scanf("%d ",& ampn);

getchar();

如果(n==1)

{

printf("請輸入數字!\ n ");

scanf("%d ",& ampm);

}

其他

{

printf("請輸入姓名或作者或按\ n ");

fgets(c,20,stdin);

strl wr(c);

}

clr SCR();

fp=fopen("E:\\book "," r ");

而(!feof(fp))

{

fgets(head-& gt;名字,20,FP);

fgets(head-& gt;作者,20,FP);

fgets(head-& gt;press,20,FP);

fscanf(fp," %d,%d\n ",& amphead->;價格& amphead->;號);

如果((head-& gt;number = = m)| |(strcmp(head-& gt;name,c)= = 0)| |(strcmp(head-& gt;author,c)= = 0)| |(strcmp(head-& gt;按下,c)==0))

{

printf("書的名稱:% s作者:% s出版社:%d,編號:%d\n ",head-& gt;姓名,頭像-& gt;作者,負責人-& gt;按下,head-& gt;price,head->;號);

k++;

}

免費(頭);

head=(結構書*)malloc(sizeof(結構書));

head->;next = NULL

}

免費(頭);

fclose(FP);

如果(k==0)

printf("無!\ n ");

}

訂單()

{

FILE * fp

結構書*頭,*新,*廟,*當前;

int i=0,j=0,k=0,n;

printf("如果要訂書,在名字上按1,或者在號碼上按2 \ n ");

scanf("%d ",& ampn);

clr SCR();

fp=fopen("E:\\book "," r ");

而(!feof(fp))

{

k++;

如果(k==1)

head=new=(結構書*)malloc(sizeof(結構書));

其他

new = new-& gt;next=(結構書*)malloc(sizeof(結構書));

fgets(新-& gt;名字,20,FP);

fgets(新-& gt;作者,20,FP);

fgets(新-& gt;press,20,FP);

fscanf(fp," %d,%d\n ",& amp新建-& gt;價格& amp新建-& gt;號);

}

fclose(FP);

新建-& gt;next = NULL

temple=(結構書*)malloc(sizeof(結構書));

for(I = 1;我& lt= k-1;i++)

{

電流=水頭;

new = head-& gt;接下來;

for(j = 1;j & lt= k-I;j++)

{

如果(n==1)

if(strcmp(當前-& gt;名字,新-& gt;姓名)>0)

{

* temple = * new

* new = * current

* current = * temple

坦普爾->;next = new-& gt;接下來;

新建-& gt;下壹個=當前-& gt;接下來;

當前->;next = temple-& gt;接下來;

}

如果(n==2)

如果(當前-& gt;編號& gt新建-& gt;編號)

{

* temple = * new

* new = * current

* current = * temple

坦普爾->;next = new-& gt;接下來;

新建-& gt;下壹個=當前-& gt;接下來;

當前->;next = temple-& gt;接下來;

}

當前=新;

new = new-& gt;接下來;

}

}

新=頭;

fp=fopen("E:\\book "," w ");

for(I = 1;我& lt= k;i++)

{

fprintf(fp," %s%s%s ",new-& gt;名字,新-& gt;作者,新-& gt;按);

fprintf(fp," %d,%d\n ",new-& gt;價格,新-& gt;號);

printf(" Book:% sAuthor:% s ",new-& gt;名字,新-& gt;作者,新-& gt;按);

printf("價格:%d,數量:%d\n ",new-& gt;價格,新-& gt;號);

new = new-& gt;接下來;

免費(頭);

頭=新;

}

fclose(FP);

}

主()

{

int n;

while(1)

{

printf(" \ n ");

printf("如果要補充!請按“1”\ n”);

printf("如要更正!請按‘2’\ n”);

printf("如果要刪除!請按‘3’\ n”);

printf("如果要搜索!請按‘4’\ n”);

printf("如果妳想訂購!請按‘5’\ n”);

printf("如果妳什麽都不想做!請按‘0’\ n”);

scanf("%d ",& ampn);

clr SCR();

開關(n){

案例1:add();

打破;

案例二:正確();

打破;

情況三:delete();

打破;

案例四:搜索();

打破;

案例五:order();

打破;

案例0:破;

}

如果(n==0)

打破;

}

}

  • 上一篇:女人夢見蓋好的房子意味著什麽?
  • 下一篇:現在廣州有哪些景點開放?2020年廣州重開景點開放時間及預訂信息。
  • copyright 2024歷史故事大全網