人力资源管理师
报考指南考试报名准考证打印成绩查询考试题库

重置密码成功

请谨慎保管和记忆你的密码,以免泄露和丢失

注册成功

请谨慎保管和记忆你的密码,以免泄露和丢失

当前位置:首页人力资源管理师考试问答正文
设计一个计算机管理系统完成图书管理基本业务。C语言 设计一个计算机管理系统完成图书管理基本业务。C语言
基本要求1每种书的登记内容包括书号书名著作者现存量和库存量2对书号建立索引表线性表以提高查找效率索引表采用树表3系统主要功能如下采编入库新购一种书,确定书号后,登记到图书帐目表中,如果表中已有,则只将库存量增加借阅如果一种书的现存量大于0,则借出一本,登记借阅者的书证号和归还期限,改变现存量归还注销对借阅者的登记,改变该书的现存量。
出柜后热恋1回答 · 6151人浏览
最佳答案
用户头像
batouce 新兵答主 05-24 TA获得超过2660个赞
通过测试!
#include
#include
#include
#include
#define MAX 100
struct Student
{
int num;/*登录号*/
char name[100];/*书名*/
char author[100];/*作者名*/
char fn[100];/*分类号*/
char place[100];/*出版单位*/
char day[100];/*出版时间*/
float money;/*价格*/
}stu[MAX];
main()/*主函数*/
{
void Input();/*输入*/
void Display();/*输出*/
void Find();/*查找*/
void Modify();/*删除*/
void Change();/*修改*/
int n;
for(;;)
{
printf("");
printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※");
printf("※ ※");
printf("※ 欢迎来到图书信息管理系统 ※");
printf("※ ※");
printf("※ ※");
printf("※ 主菜单 ※");
printf("※ ※");
printf("※ ▲1.图书信息录入 ▲ ※");
printf("※ ※");
printf("※ ▲2.图书信息浏览 ▲ ※");
printf("※ ※");
printf("※ ▲3.图书信息查询 ▲ ※");
printf("※ ※");
printf("※ ▲4.图书信息删除 ▲ ※");
printf("※ ※");
printf("※ ▲5.图书信息修改 ▲ ※");
printf("※ ※");
printf("※ ▲6.退出系统 ▲ ※");
printf("※ ※");
printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※");
printf("请输入选择项(1-6):");
scanf("%d",&n);
printf("");
if(n>0&&n<7)
{
switch(n)
{
case 1:Input();break;
case 2:Display();break;
case 3:Find();break;
case 4:Modify();break;
case 5:Change();break;
case 6:printf("※※※※※※※※※※※※※※※※※※※※※※※※");
printf("※ ※");
printf("※ 谢谢使用! ※");
printf("※ 再见! ※");
printf("※ ※");
printf("※※※※※※※※※※※※※※※※※※※※※※※※");
exit(0);
}
}
else
{
printf("※※※※※※※※※※※※※※※※※※※※※※※※");
printf("※ ※");
printf("※ 输入错误! ※");
printf("※ 请退出! ※");
printf("※ ※");
printf("※※※※※※※※※※※※※※※※※※※※※※※※");
break;
}
}
}
void Find()/*查找*/
{
FILE *fp;
int i;
int choose,t;
char ans[100];

do
{
printf("1.按书名查找");
printf("2.按作者名查找");
printf("返回主菜单(其他数字)");
scanf("%d",&choose);
if(choose==1)
{
printf("输入所查书名:");
scanf("%s",ans);
t=-1;
if(choose==1)
{
for(i=0;i {
t=i;
fp=fopen("student","rb");
for(i=0;fread(&stu[i],sizeof(struct Student),1,fp)==1;i++)
printf("%d %s %s %s %s %s %f",stu[t].num,stu[t].name,stu[t].author,stu[t].fn,stu[t].place,stu[t].day,stu[t].money);
}
}
if(t==-1) printf("不存在该信息");
}
else if(choose==2)
{
printf("输入所查作者名:");
scanf("%s",ans);
t=-1;
if(choose==2)
{
for(i=0;i if(strcmp(ans,stu[i].author)==0)
{ t=i;
fp=fopen("student","rb");
for(i=0;fread(&stu[i],sizeof(struct Student),1,fp)==1;i++)
printf("%d %s %s %s %s %s %f",stu[t].num,stu[t].name,stu[t].author,stu[t].fn,stu[t].place,stu[t].day,stu[t].money);
}
}
if(t==-1) printf("不存在该信息");
}
else return;
}while(1);
}
void Display()/*输出*/
{
FILE *fp;
int i;
fp=fopen("student","rb");
printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※");
printf(" 图书列表");
printf("-----------------------------------------------------------");
printf("登录号 书名 作者名 分类号 出版单位 出版时间 价格");
printf("-----------------------------------------------------------");
for(i=0;fread(&stu[i],sizeof(struct Student),1,fp)==1;i++)
{
printf("%6d %8s %8s %8s %8s %8s %8.2f",stu[i].num,stu[i].name,stu[i].author,stu[i].fn,stu[i].place,stu[i].day,stu[i].money);
}
fclose(fp);
}
void Input()/*输入*/
{
FILE *fp;
int n;
fp=fopen("student","wb");
for(n=0;n {
printf("n=%d 输入序号n(当输入n=-1时,返回),n=",n++);
scanf("%d",&n);
if(n==-1)
{
fclose(fp);
return;
}
else
{
printf("请输入登录号 书名 作者名 分类号 出版单位 出版时间 价格");
scanf("%d%s%s%s%s%s%f",&stu[n].num,stu[n].name,stu[n].author,stu[n].fn,stu[n].place,stu[n].day,&stu[n].money);
fwrite(&stu[n],sizeof(struct Student),1,fp);
}
}
fclose(fp);
}
void Modify()/*删除*/
{
FILE *fp;
int i,flag,n,s,j;
fp=fopen("student","rb+");
rewind(fp);
printf(" 图书列表");
printf("-----------------------------------------------------------");
printf("登录号 书名 作者名 分类号 出版单位 出版时间 价格");
printf("-----------------------------------------------------------");
for(i=0;fread(&stu[i],sizeof(struct Student),1,fp)==1;i++)
{
printf("%6d %8s %8s %8s %8s %8s %8.2f",stu[i].num,stu[i].name,stu[i].author,stu[i].fn,stu[i].place,stu[i].day,stu[i].money);
printf("");
}
n=i;
printf("输入待删除图书号:");
scanf("%d",&s);
for(i=0,flag=1;flag&&i {
if(s==stu[i].num)
{
for(j=i;j {
stu[j].num=stu[j+1].num;
strcpy(stu[j].name,stu[j+1].name);
strcpy(stu[j].author,stu[j+1].author);
strcpy(stu[j].fn,stu[j+1].fn);
strcpy(stu[j].place,stu[j+1].place);
strcpy(stu[j].day,stu[j+1].day);
stu[j].money=stu[j+1].money;
}
flag=0;
}
}
if(!flag)
n=n-1;
else
printf("没有此号");
fp=fopen("student","wb");
for(i=0;i fwrite(&stu[i],sizeof(struct Student),1,fp);
fclose(fp);
fp=fopen("student","r");
printf(" 图书列表");
printf("-----------------------------------------------------------");
printf("登录号 书名 作者名 分类号 出版单位 出版时间 价格");
printf("-----------------------------------------------------------");
for(i=0;i {
fread(&stu[i],sizeof(struct Student),1,fp);
printf("%6d %8s %8s %8s %8s %8s %8.2f",stu[i].num,stu[i].name,stu[i].author,stu[i].fn,stu[i].place,stu[i].day,stu[i].money);
printf("");
}
fclose(fp);
}
void Change()/*修改*/
{
FILE *fp;
int i,num,n;
int flag=0;
printf("请输入要修改的图书号:");
scanf("%d",&num);
for(i=0;i<=MAX;i++)
if(stu[i].num==num)
{
printf(" 图书列表");
printf("-----------------------------------------------------------");
printf("登录号 书名 作者名 分类号 出版单位 出版时间 价格");
printf("-----------------------------------------------------------");
printf("%6d %8s %8s %8s %8s %8s %8.2f",stu[i].num,stu[i].name,stu[i].author,stu[i].fn,stu[i].place,stu[i].day,stu[i].money);
printf("-----------------------------------------------------------");
n=i;
flag=1;
break;
}
if(flag==0)
{
printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※");
printf(" 输入错误!");
printf(" 请返回!");
printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※");
return;
}
printf("");
fp=fopen("student","rb+");
fseek(fp,n*sizeof(struct Student),0);
printf("登录号 书名 作者名 分类号 出版单位 出版时间 价格");
scanf("%d%s%s%s%s%s%f",&stu[n].num,stu[n].name,stu[n].author,stu[n].fn,stu[n].place,stu[n].day,&stu[n].money);
fwrite(&stu[i],sizeof(struct Student),1,fp);
fclose(fp);
fp=fopen("student","rb");
printf(" 图书列表");
printf("-----------------------------------------------------------");
printf("登录号 书名 作者名 分类号 出版单位 出版时间 价格");
printf("-----------------------------------------------------------");
for(i=0;fread(&stu[i],sizeof(struct Student),1,fp)==1;i++)
{
printf("%6d %8s %8s %8s %8s %8s %8.2f",stu[i].num,stu[i].name,stu[i].author,stu[i].fn,stu[i].place,stu[i].day,stu[i].money);;
}
printf("-----------------------------------------------------------");
fclose(fp);
}

声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:service@bkw.cn 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

|
测一测是否符合报考条件
免费测试,不要错过机会
提交
互动交流

微信扫码关注公众号

获取更多考试热门资料

温馨提示

信息提交成功,稍后帮考专业顾问免费为您解答,请保持电话畅通!

我知道了~!
温馨提示

信息提交成功,稍后帮考专业顾问给您发送资料,请保持电话畅通!

我知道了~!

提示

信息提交成功,稍后班主任联系您发送资料,请保持电话畅通!