《算法分析与设计综合实验》实验报告图书信息管理系统Word文件下载.docx
- 文档编号:21339249
- 上传时间:2023-01-29
- 格式:DOCX
- 页数:47
- 大小:835.42KB
《算法分析与设计综合实验》实验报告图书信息管理系统Word文件下载.docx
《《算法分析与设计综合实验》实验报告图书信息管理系统Word文件下载.docx》由会员分享,可在线阅读,更多相关《《算法分析与设计综合实验》实验报告图书信息管理系统Word文件下载.docx(47页珍藏版)》请在冰豆网上搜索。
intz,k=0,a=1;
printf("
输入管理员账户名:
"
);
//登录验证
scanf("
%s"
&
data);
strcat(account,data);
strcat(account,"
.txt"
//提取数据
FILE*fpx=NULL;
if(fpx=fopen(account,"
r"
))
{
fscanf(fpx,"
%s\n"
admin.name);
admin.ID);
admin.password);
fclose(fpx);
}
else{printf("
没有对应资料!
\n"
system("
pause"
return0;
}
if(strcmp(data,admin.name)==-1)//验证密码
{
printf("
账号不存在\n"
return0;
}
else
账号存在(你将有3次输入密码机会)\n"
for(z=2;
z>
=-1;
z--)
{
if(z==-1){return0;
printf("
输入密码:
while
(1)
fflush(stdin);
inputa=getch();
if(inputa!
='
\r'
&
inputa!
\b'
)//密码隐藏
{
printf("
*"
word[k]=inputa;
k++;
}
elseif(inputa=='
)//退格删除
{
printf("
\b"
"
k--;
elsebreak;
//回车结束
}
if(strcmp(word,admin.password)!
=0)
密码错误(%d次机会)\n"
z);
k=0;
}
else{printf("
\n密码正确!
break;
2.printf("
********************************************************************************\n"
printf("
图书数量:
%d读者数量:
%d\n"
bnum,rnum);
图书信息管理系统\n"
请做出您的选择:
(输入对应序号)\n"
1.图书管理2.读者管理——管理员使用\n"
3.图书借还——任何人使用\n"
0.退出\n"
输入:
scanf("
%c"
input);
switch(input)
case'
0'
:
a=0;
1'
BookManage();
2'
ReaderManage();
3'
BookOperate();
system("
cls"
3.
四、实验主要结果(附程序运行界面截图)
实验报告2
显示记录与编辑记录
1.屏幕显示若干记录
列表输出磁盘文件记录,并显示记录序号与记录总数。
2.按字段编辑记录
输入记录序号,显示对应记录;
按字段编辑记录。
intShowRecord(intx)
{
intb=1,c=1;
charaim1[12]={"
图书"
},aim2[12]={"
读者"
},aim[12],buffer[80];
//判断目的
if(x==1)//图书
strcpy(aim,aim1);
strcat(aim,"
\\"
图书记录"
FILE*fp;
if((fp=fopen(aim,"
))==NULL){printf("
打开失败!
return-1;
序号书号书名作者日期出版类别定价是否借出\n"
for(;
b<
=(bnum=getlinenum
(1));
b++)
fgets(buffer,1024,fp);
%d%s"
c,buffer);
c++;
fclose(fp);
system("
elseif(x==2)//读者
strcpy(aim,aim2);
读者记录"
for(;
(rnum=getlinenum
(2));
buffer);
错误\n"
return-1;
}
return0;
intFixRecord(intx)
intb=1,c;
chara,aim1[12]={"
FILE*fp,*ftp;
if((ftp=fopen("
图书\\temp.txt"
"
w"
创建文件失败!
r+"
ShowRecord
(1);
输入要编辑的条目序号:
%d"
c);
b!
=c;
b++)
fscanf(fp,"
%s%s%s%s%s%s%d%d%*[^\n]"
books[0].ID,&
books[0].name,&
books[0].author,&
books[0].date,&
books[0].publish,&
books[0].sort,&
books[0].price,&
books[0].borrowed);
fprintf(ftp,"
%s%s%s%s%s%s%d%d\n"
books[0].ID,books[0].name,books[0].author,books[0].date,books[0].publish,books[0].sort,books[0].price,books[0].borrowed);
开始编辑:
输入书号:
scanf("
%s"
books[0].ID);
书名:
books[0].name);
作者:
books[0].author);
日期:
books[0].date);
出版:
books[0].publish);
类别:
books[0].sort);
定价:
books[0].price);
是否借出:
书号:
%s书名:
%s作者:
%s日期:
%s出版:
%s类别:
%s定价:
%d是否借出:
%d\n确定?
(y/n)\n输入:
fflush(stdin);
a);
if(a=='
y'
)
fprintf(ftp,"
b++;
fscanf(fp,"
编辑成功!
elseprintf("
已取消创建...\n"
=bnum;
fclose(fp);
fclose(ftp);
remove(aim);
rename("
aim);
实验报告3
增加记录与删除记录
1.屏幕增加记录(添加记录、插入记录)
输入待增加的记录信息,并输入记录序号,将记录插入到指定序号对应记录之后。
2.删除指定的记录
输入待删除的记录序号,并显示对应记录;
显示确认信息,以删除指定记录。
intAddRecord(intx,inth)
intb=1,i;
},aim[12],buffer[80],buffer1[80],buffer2[80];
list*t,*p;
bnum=getlinenum
(1);
输入:
\n书号书名作者日期出版类别定价是否借出\n"
%s%s%s%s%s%s%d%d"
books[1].ID,&
books[1].name,&
books[1].author,&
books[1].date,&
books[1].publish,&
books[1].sort,&
books[1].price,&
books[1].borrowed);
link*m=clist();
p=m->
head;
get_and_add_list(x,m,NULL);
intj=0;
if(h>
bnum+1)h=bnum+1;
if((p=m->
head)==NULL)
t=(list*)malloc(sizeof(list));
if(t==NULL)return-1;
t->
next=p->
next;
data=books[1];
m->
head=t;
length++;
elseif(h==1)
if(t==NULL)return-1;
next=m->
t->
else
while(p!
=NULL&
j<
h-2)
p=p->
j++;
t=(list*)malloc(sizeof(list));
p->
next=t;
fprintf_list(x,m);
buffer);
=h;
fgets(buffer,0,fp);
fgets(buffer1,1024,fp);
fprintf(fp,"
b++;
fgets(buffer2,1024,fp);
fprintf(fp,"
buffer1);
b++;
fgets(buffer1,1024,fp);
buffer2);
ShowRecord(x);
1\n"
intDeleteRecord(intx,chary[])
FILE*fin,*ftp;
charch,aim1[12]={"
if((fin=fopen(aim,"
while(fscanf(fin,"
books[0].borrowed)==8)
if(strcmp(books[0].ID,y)!
}
fclose(fin);
图书\\图书记录.txt"
删除成功!
elseif(x==2)//读者
实验报告4
查询记录
按指定字段查询记录
显示查询子菜单,输入字段序号,按指定字段查询记录,并显示查询结果。
特别地,对“定价”字段,输入区间左右端点值,在指定范围查询记录。
intInquireRecord(intx)
intb=1,c,d;
FILE*fp;
查询的依据是:
\n1.书号\n2.书名\n3.作者\n4.出版日期\n5.类别\n6.定价\n7.是否借出\n0.返回\n输入:
switch(c)
case0:
case1:
scanf("
书号书名作者日期出版类别定价是否借出\n"
while(fscanf(fp,"
books[0].dat
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 算法分析与设计综合实验 算法 分析 设计 综合 实验 报告 图书 信息管理 系统