图书信息管理系统源代码设计_第1页
图书信息管理系统源代码设计_第2页
图书信息管理系统源代码设计_第3页
图书信息管理系统源代码设计_第4页
图书信息管理系统源代码设计_第5页
已阅读5页,还剩16页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

头函数名:

#include<stdio.h>

#include<stdlib.h>

#include<string.h>

/*********图书信息构造体*********/

/***包括登录号,书名,作者名,分类号,出版单位,出版时间,价格等***/

structbookinf

{ininume******************************************************号

charbname|20|;***************************************书名

charwname[10];***************************************作者名

charclanun】[14];***************************************分类号

charpubcomf10];********案*********************尔********出版单位

charpubtimef10]:*****************************木*********出版时间

floatprice;**京木水*******************************器********价格

};

一管理员登录系统模块:

(1)来到图书信息管理系统页面

voidindex()

charinput;注释:运行时

printf(''\n\n\t\t\t*****************************\n"),直接进入

printf("\t\t\t图书信息管理系统\n");这个页面

printf("\t\t\t*****************************\n\n\n");

printf(H\n”);

printf("\t<按任意键进入>\n\t”);

input=gctchar();

(2)管理员登陆进入功能菜单页面

FILE*fp;

structmanagepswd;

if((fp=fopen(',password.txt",,,r"))==NULL)

printf("\n\n\n\tCannotopenfile!\n\t");

else

do

{

printf("\n\n\t请输入管理员帐号

scanf("%s",namc);

printf("\n\n\t请输入管理员密码

scanf(M%sM,password);

tp=fopcn("password.txt

frcad(&.pswd,sizcof(streetmanage),1,fp);

fclosc(fp);

w=strcmp(pswd.manage_name,name);

k=sticmp(pswd.password.password):

adm_sen-elist();

)

while(w!=0||k!=0);

adm_servelist();

)

)

(3)来到功能菜单页面

voidadm_scrvclist()

voidbook_add();

voidbook_vicw();

voidchangc();

voiddcl();

voidbook_scarch();

voidlogin();

voidp\vchangc();

intin;注释:菜单列出的服务种类

charinput;从1,2,3,4,5,6

do所对应的功能进行选择

(

printf("\n\n\n\t-欢迎使用信息管理系统」):

printf("\n\n\t1.图书信息录入\n");

printf(飞2.图书信息浏览\n)

printf(%3.图书信息查询\n");

printf(”\t4.图书信息删除\n");

printf(飞5.图书信息修改矫”);

printf(%6.退出管理模式\n");

printf("\n\t请选择服务种类:");

scanf("%d”,&in);

if(in!=l&&in!=2&&in!=3&&in!=4&&in!=5&&in!=6)

printf("\n\t没有这项服务~\n");

printf("\t按任意键重新选择");

input=gctchar();

}

)

while(in!=l&&in!=2&&in!=3&&in!=4&&in!=5&&in!=6);

switch(in)

(

case1:book_add();break;注释:选择自己所需要

case2:book_view();break;后掘下数字键则

case3:booksearchO:break:则进入此功能页面

case4:dcl();break;

case5:change():break;

case6:login();break;

}

)

(3)图书信息录入功能模块

voidbook_add()

voidadm_servelist();

voidbook_add();

inti=0J;

FILE*fp;

charinput;注释:输入的图书信息

structbookinfbooks;是通过文献进行

structbookinfbook_taxis[30J;保留的

printf("\n\n\n\t一请输入图书信息一\n\n");

printf(M\t登录号

scanf("%d”,&books.num);

printf("\n\t书名

scanff**%s**.books.bnanie);

printf('\n\t作者名:");

scanf(**%su,books.wname);

printf(M\n\t分类号:");

scanf(,*%s,,,books.clanum);

printf(M\n\t出版单位:

scanf(**%sn,books.pubcom);

printf(H\n\t出版时间:

scanf(**%s*',books.pubtinie);

printf(M\n\t价格:");

scanf("%「,&books.price);

if((fp=fopen(',book.txt",Mr',))!=NULL)

(

do

(

fread(&book_taxis[i]3izeof(structbookinf),l,fp);

i=i+l;

}

while(!feof(fp));

fclose(fp);

for(j=O;j<=i;j++)

if(books.num==booktaxis[j].num)

(

printf(M\ii\n\n\t对不起,这个编号已经使用过了~\n”);

printf(*'\t按任意键返回管理菜单~”);

input=getchar();

adni_servelist();

break;

if((fp=fopen(,,book.txt,,;,r',))==NULL)

fp=fopen(Hbook.txt,,,,'wn);

}

else

(

fclose(fp);

fp=fopen(,,book.txt',,"a,');

)

fwrite(&books^izeof(structbookinf),l,fp);

fclose(fp);

printf("\n\n\n\t信息输入完毕~按任意键继续

input=getchar();

adm_servelist();

)

(4)图书信息浏览功能模块

voidbook_view()

(

voidadm_servelist();

voidbook_view();

intinp,i=O,n=();

FILE*fp;

charinput;

structbookinfbookview[20];

if((fp=fopen(,,book.txt,,,',r,,))==NULL)

(

printf(M\n\n\n\t数据尚未初始化请在管理菜单中增长图书信息--\nM);

printf(”\n\tv按任意键返回管理菜单

input=getchar();

adm_servelist();

)

else

(

do

{

fread(&bookview[ij^»izeof(structbookinf),l,fp);

i=i+l;

)

while(!feof(fp));

fclose(fp);

do

printf(',\n\t...........共有%d条记录

printfCAnXnU登录号:%d\n",bookview[n].num);

prhitf(”\n\t书名:%s\nn,bookviewln].bname);

printf(H\n\t作者名:%s\n*',bookview[n].wname);

printf("\n\t分类号:%s\iiu,bookview[nl.clanum);

printf(H\n\t出版单位:%s\n,,,bookview[n].pubcom);

printf("\n\t出版时间:%s\n",bookview[n].pubtime);

printf('*\n\t价格:%f\ii,,,bookview[nl.price);

printf(',\n\n\tl._t一页\t2.下一页\t3.回目录\n”);

printfC^nU请选择:");

scanf(,,%d,,,&inp):

switch(inp)

(

case1:

(

if(n==0)

(

printf("\n\t已抵达首页\n\t按任意键重新选择”);

input=getchar();

elsen=n-l;break;

)

case2:

{

if(n==i-2)

(

printf(M\n\t已抵达最末页\n\t按任意键重新选择,1);

input=getchar();

)

elsen=n+l;break;

)

case3:

(

adm_servelist();

break;

}

default:

(

printfC'\n\t没有这项服务\n\t按任意键重新选择”);

input=getchar();

}

while(inp!=3);

)

}

(5)图书信息修改与删除功能模块

修改:

voidchange(intx)

{

intinp,i=0J;

voidbook_search();

FILE«fp,*fpl;

charinput;

structbookinfbooks,book_taxis[20];

do

(

printf(M\n\n\n\t注意:您确定要修改该记录吗?\n”);

是\t2.否\n");

printf("\n\t请输入:");

scanf("%(T,&inp);

if(inp!=l&&inp!=2)

{

printf(*'\n\t对不起~没有这项服务~\n”);

printf(n\t按任意键重新选择\n\t”);

input=getchar();

)

}

while(inp!=l&&inp!=2);

if(inp==2)

book_search();

if(inp==l)

(

printf(n\n\n\n\t…请输入图书信息…\n\n°);

printfC'Xt登录号:");

scanf(,*%dM,&books.num);

printfC'\n\t书名:");

scanf(M%s',,books.bnanie);

printf"n\t作者名:“);

scaiif(M%sM,books.wname);

printf(n\n\t分类号:");

scanf(”%s”,books.clanum);

printf(*'\n\t出版单位:");

scant',%s”,books.pubcom);

printf(*'\n\t出版时间:");

scanf("%sM,books.pulitime);

printfC'\n\t价格:");

scanf(''%f",&books.price);

if((fpl=fopen('%ook.txt“Jr"))!=NULL)

(

do

(

fread(&book_taxis[i],sizeof(structbookinf1);

i=i+l;

)

while(!feof(fpl));

fclose(fpl);

for(j=0;j<x;j++)

if(books.num==book_taxis[j].nuni)

printfCAnXnVnXt对不起,这个编号已经使用过了-\n°);

printf(**\t按任意键返回管理菜单~”);

printfCO'*);

input=getchar();

book_search();

break;

}

for(j=x+l;j<i-2;j++)

if(books.num==book_taxis[j].num)

|

printf(n\n\n\n\t对不起,这个编号己经使用过了~\暧);

printf(,,r,);

printfCAt按任意键返回管理菜单~”);

input=getchar();

book_search();

break;

}

}

book_taxis[xj=books;

fp=fopen("book.txt"Jw”);

for(j=();j<i-l;j++)

fwrite(&book_taxis[j],sizeof(structbookinf),],fp);

fclose(fp);

printf("\n\n\t信息修改完毕!按任意键返回");

input=getchar();

book_search();

}

)

S删除:

voiddel(inty)

{

charinput;

FILE*fp;

intinp,i=0J;

structbookinfbook_taxis[20];

voidbook_search();

voidadmjservelistO;

do

print"”\n\n\n\t注意:您确定要删除该记录吗?\n”);

prindT\n\tl.是\t2.否\n“);

printf(n\n\t请输入:");

scanf("%d”,&inp);

if(inp!=l&&inp!=2)

(

printf(H\n\t对不起~没有这项服务~\n");

printf(H\t按任意键重新选择\n\t");

input=getchar();

}

}

while(inp!=l&&inp!=2):

if(inp==2)

booksearchO;

if(inp==l)

(

if((fp=fopen(,,book.txt,,,,,r,,))!=NULL)

(

do

(

fread(&book_taxis[il,sizeof(structbookinf),l/p);

i=i+l;

while(!feof(fp));

fclose(fp);

}

if(i>2)

(

fp=fopen(',book.txe\MwH);

for(j=O;j<y;j++)

fwrite(&book_taxis[j]^>izeof(structbookinf)J,fp);

fclose(fp);

fp=fopen(",book.txt,,,Man);

fora=y+l;j<i-l;j++»

fwrite(&book_taxis[jl^izeof(structbookinf),l,fp);

fclose(fp);

)

else

remove("book.txt");

printf("\n\n\t记录己删除!\n\

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论