



#include
#include
#include
#include
#define STACK_INIT_SIZE 10
#define OK 1
#define TRUE 1
#define FALSE 0
#define ERROR 0
struct student /*定义学生类型,用于存放借出的书籍*/
{
int carnum;
char lendbook[10];
}student[1000];
struct employ /*定义职工类型*/
{
int employnum;
char employname[15];
int employage;
char employsex[2];
char employleve[10];
long int employtage;
}employ[50];
struct book /*定义书的类型*/
{
int booknum;
char bookname[10];
char bookcreat[10];
int turefalse; /*用于借书和还书模块判断一本书是否借出的条件*/
}book[1000];
struct car /*借书卡的数据类型*/
{
int carnum;
char studentname[10];
int studentclass;
}car[100];
huanbook() /*还书函数*/
{
FILE *fp,*fp2; /*定义两个文件指针,fp2用于修改数据时设立临时文件用,防止数据遭破坏*/
int i,n;
int carnum;
char lendbook[10];
printf("请你输入你的卡号");
scanf("%d",&carnum);
fp=fopen("car.txt","r"); /*读取卡号记录*/
for(i=0;fread(&car[i],sizeof(struct car),1,fp)!=0;i++) /*for循环判断卡号是否存在*/
{
if(car[i].carnum==carnum) /*卡号存在,进入下一循环*/
{
n=i;
fclose(fp);
printf("请输入你要还的书的名字");
scanf("%s",lendbook);
fp=fopen("record.txt","r");
for(i=0;fread(&student[i],sizeof(struct student),1,fp)!=0;i++) /*判断是否借阅了输入的书*/
{
if(strcmp(student[i].lendbook,lendbook)==0) /*借阅了该书,进入下一循环,否则出错显示*/
{
fclose(fp);
fp=fopen("record.txt","r");
fp2=fopen("bookl.txt","w");
for(i=0;fread(&student[i],sizeof(struct student),1,fp)!=0;i++)
{
if(strcmp(student[i].lendbook,lendbook)==0)
{
continue; /*删除还掉的书的借书记录*/
}
fwrite(&student[i],sizeof(struct student),1,fp2); /*写入原来没还的书的记录*/
}
fclose(fp);
fclose(fp2);
fp=fopen("record.txt","w");
fp2=fopen("bookl.txt","r");
for(i=0;fread(&student[i],sizeof(struct student),1,fp2)!=0;i++)
{
fwrite(&student[i],sizeof(struct student),1,fp); /*将借书记录信息写回*/
}
fclose(fp);
fclose(fp2);
fopen("bookl.txt","w"); /*清临时文件的记录*/
fclose(fp2);
fp=fopen("book.txt","r");
fp2=fopen("bookl.txt","w");
for(i=0;fread(&book[i],sizeof(struct book),1,fp)!=0;i++) /*将书的记录写入临时文件,防止因为修改信息破坏以前的记录*/
{
if(i==n)
{
book[i].turefalse=1;
fwrite(&book[i],sizeof(struct book),1,fp2); /*将还的书的原来状态设为无人借阅的*/
continue;
}
fwrite(&book[i],sizeof(struct book),1,fp2);
}
fclose(fp);
fclose(fp2);
fp=fopen("book.txt","w");
fp2=fopen("bookl.txt","r");
for(i=0;fread(&book[i],sizeof(struct book),1,fp2)!=0;i++)
{
fwrite(&book[i],sizeof(struct book),1,fp); /*将临时文件写回*/
}
fclose(fp);
fclose(fp2);
fopen("bookl.txt","w"); /*清临时文件*/
fclose(fp2);
printf("还书完毕,按任意键返回");
getch();
return 1;
}
}
printf("你没有借这样的书,任意键返回"); /*出错提示*/
fclose(fp);
getch();
return 0;
}
}
printf("系统没这样的卡,和管理员联系,按任意键返回"); /*出错提示*/
fclose(fp);
getch();
}
findbook()
{
FILE *fp;
char bookname[10];
int ture,i;
fp=fopen("book.txt","r");
printf("请输入你要查找的书名");
scanf("%s",bookname);
for(i=0;fread(&book[i],sizeof(struct book),1,fp)!=0;i++)
{
if(strcmp(bookname,book[i].bookname)==0)
{
if(book[i].turefalse==1)
{
printf("这本书的详细资料是:%d %s %s 此书现在无人借阅按任意键返回",book[i].booknum,book[i].bookname,book[i].bookcreat);
}
else {printf("这本书已经有人借出");fclose(fp);return 0;}
fclose(fp);
return FALSE;
}
}
printf("没有你要查询的书籍");
fclose(fp);
return FALSE;
}
findbook1()
{
FILE *fp;
char bookcreat[10];
int ture,i;
fp=fopen("book.txt","r");
printf("请输入你要查找的作者名");
scanf("%s",bookcreat);
for(i=0;fread(&book[i],sizeof(struct book),1,fp)!=0;i++)
{
if(strcmp(bookcreat,book[i].bookcreat)==0)
{
if(book[i].turefalse==1)
{
printf("这本书的详细资料是:%d %s %s 此书现在无人借阅按任意键返回",book[i].booknum,book[i].bookname,book[i].bookcreat);
}
else {printf("这本书已经有人借出");fclose(fp);return 0;}
fclose(fp);
return FALSE;
}
}
printf("没有你要查询的书籍");
fclose(fp);
return FALSE;
}
lendcount()
{
FILE *fp;
int i,n=0;
fp=fopen("record.txt","r");
for(i=0;fread(&student[i],sizeof(struct student),1,fp)!=0;i++)
{
printf("卡号:%d 借出的书籍:%s ",student[i].carnum,student[i].lendbook);
n=n+1;
}
fclose(fp);
printf("目前共有%d本书借出",n);
printf("按任意键");
getch();
return n;
}
chabook()
{
char ch5;
do
{
printf("---------------欢迎进入图书查询系统!--------------");
printf(" 1:<按书名查找>");
printf(" 2:<按作者查找>");
printf(" 0:<返回>");
printf("请输入0--2,其他输入非法!");
scanf("%s",&ch5);
switch(ch5)
{
case ''1'':findbook();getch();break;
case ''2'':findbook1();getch();break;
case ''0'':break;
default:printf("无此操作");getch();break;
}
}while(ch5!=''0'');
return FALSE;
}
lendbook()
{
FILE *fp,*fp2;
int i,n;
int carnum;
printf("请你输入你的卡号");
scanf("%d",&carnum);
fp=fopen("car.txt","r");
for(i=0;fread(&car[i],sizeof(struct car),1,fp)!=0;i++)
{
if(car[i].carnum==carnum)
{
n=i;
fclose(fp);
printf("请输入你要借阅的书的名字");
scanf("%s",student[n].lendbook);
fp=fopen("book.txt","r");
for(i=0;fread(&book[i],sizeof(struct book),1,fp)!=0;i++)
{
if(strcmp(book[i].bookname,student[n].lendbook)==0)
{
if(book[i].turefalse==0) {printf("对不起,此书有人借出,请借其他书");fclose(fp);getch();return;}
else
fclose(fp);
fp=fopen("record.txt","a+");
student[n].carnum=carnum;
fwrite(&student[n],sizeof(struct student),1,fp);
fclose(fp);
fp=fopen("book.txt","r");
fp2=fopen("bookl.txt","w");
for(i=0;fread(&book[i],sizeof(struct book),1,fp)!=0;i++)
{
if(strcmp(book[i].bookname,student[n].lendbook)==0)
{
book[i].turefalse=0;
fwrite(&book[i],sizeof(struct book),1,fp2);
continue;
}
fwrite(&book[i],sizeof(struct book),1,fp2);
}
fclose(fp);
fclose(fp2);
fp=fopen("book.txt","w");
fp2=fopen("bookl.txt","r");
for(i=0;fread(&book[i],sizeof(struct book),1,fp2)!=0;i++)
{
fwrite(&book[i],sizeof(struct book),1,fp);
}
fclose(fp);
fclose(fp2);
fopen("bookl.txt","w");
fclose(fp2);
printf("借书完毕,按任意键返回");
getch();
return;
}
}
printf("不存在这样的书,任意键返回");
fclose(fp);
getch();
return;
}
}
printf("你的卡号不存在,请申请新卡,按任意键返回");
fclose(fp);
getch();
}
carcount()
{
FILE *fp;
int i,n=0;
fp=fopen("car.txt","r");
for(i=0;fread(&car[i],sizeof(struct car),1,fp)!=0;i++)
{
printf("第%d张卡<卡号:%d 姓名:%s 班级:%d>",i+1,car[i].carnum,car[i].studentname,car[i].studentclass);
n=n+1;
}
fclose(fp);
printf("目前共有%d本书",n);
printf("按任意键");
getch();
}
delcar()
{
FILE *fp,*fp2;
int i;
int carnum;
char choice;
fp=fopen("car.txt","r");
fp2=fopen("bookl.txt","w");
printf("请输入你要删除的卡号");
printf("如果你输入的卡号存在,系统自动删除该信息!如果不存在,系统不做任何改动");
scanf("%d",&carnum);
for(i=0;fread(&car[i],sizeof(struct car),1,fp)!=0;i++)
{
if(car[i].carnum!=carnum)
{
fwrite(&car[i],sizeof(struct car),1,fp2);
}
}
fclose(fp);
fclose(fp2);
printf("是否真的要删除该卡?删除后该书籍的所有信息将无法恢复《Y/N》");
scanf("%s",&choice);
if(choice==''y''||choice==''Y'')
{
fp=fopen("car.txt","w");
fp2=fopen("bookl.txt","r");
for(i=0;fread(&car[i],sizeof(struct car),1,fp2)!=0;i++)
{
fwrite(&car[i],sizeof(struct car),1,fp);
}
fclose(fp);
fclose(fp2);
fp2=fopen("bookl.txt","w");
fclose(fp2);
printf("按任意键返回");
getch();
return;
}
else
{
printf("按任意键返回");
getch();
return;
}
}
addcar()
{
FILE *fp;
int i=0;
fp=fopen("car.txt","a+");
printf("请你输入卡号");
scanf("%d",&car[i].carnum);
printf("请你输入学生姓名");
scanf("%s",car[i].studentname);
printf("请你输入班级");
scanf("%d",&car[i].studentclass);
fwrite(&car[i],sizeof(struct car),1,fp);
fclose(fp);
printf("输入完毕,任意键返回");
getch();
}
声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:service@bkw.cn 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。
67
人力资源管理师证书有什么用?:人力资源管理师证书有什么用?第一、人力资源管理师证书可以领取技能补贴:拿到人力资源管理师证书后,如满足领取失业保险参保职工技能补贴条件的,对于人力资源管理师四级到三级都有相对相应的补贴,第二、报考人力资源管理师证书可以领取补助:取得人力资源管理师证书的职工退休后每个月还会再发放额外的补助,第三、报考人力资源管理师证书可以促进就业:对于打算从事人力资源行业的人员来说。
1497播放2020-06-1016
人力资源管理师证书邮寄需要哪些材料?:人力资源管理师证书邮寄需要哪些材料?(1)本人身份证复印件;(2)1寸蓝底照片一张;(3)本人邮件地址及联系方式。
1031播放2020-06-1022
人力资源管理师证书领取的方式有哪几种?:人力资源管理师证书领取的方式有哪几种?人力资源管理师证书主要有两种领取方式,一种是现场领取,另一种是快递邮寄。采用不同的人力资源管理师证书领取方式,所需的领取材料也是不同的。
893播放2020-06-10
用visualstudio软件开发一个学生成绩管理系统用C语言编写程序
chapaizeng·2019-12-08C编写人事,考勤,薪资管理系统
cafani·2019-05-14我也要用c语言编程一个图书管理系统,
chahouou·2019-05-14用C语言编程图书管理系统设计
白云被你染成了腥红色·2019-05-14用C语言编写学生成绩管理系统
bianningzui·2019-05-14C语言编写图书管理系统,已有框架
bianjiaoyan·2019-05-14急求用C语言编写的图书管理系统源代码
街头浪猫·2019-05-14用C编写图书管理系统源代码
binqingken·2019-05-14用visualstudio软件开发一个学生成绩管理系统用C语言编写程序
cafengjin·2019-05-14设计一个计算机管理系统完成图书管理基本业务。C语言
出柜后热恋·2019-05-14
是不是必须要培训机构的结业证书才能报考人力资源管理师
chaniuduan·2021-03-26人力资源管理师考试会查证件吗
baomilao·2021-03-26考人力资源管理师是需要什么学历呢
cangxiangji·2021-03-26零基础怎么报考人力资源管理师
benruifei·2021-03-26没有毕业证能考人力资源管理师吗
chaniuduan·2021-03-26人力资源管理师主要考些什么内容?
canghuixu·2021-03-26没有工作可以报考人力资源管理师吗
chaiyangcu·2021-03-26二级人力资源管理师考试报名信息在国家哪个官网查
anmangma·2021-03-26人力资源管理师三级报名一般多少钱
chaniuduan·2021-03-26人力资源管理师考试改革了吗
chaniuduan·2021-03-26
全国人力资源管理师(二级)考试大纲:第三章培训与开发
帮考网校·2022-01-06全国人力资源管理师(二级)考试大纲:第二章招聘与配置
帮考网校·2022-01-06人力资源管理师(四级)真题
帮考网校·2022-01-06高级人力资源管理师考试真题4
帮考网校·2022-01-07高级人力资源管理师考试真题2
帮考网校·2022-01-07高级人力资源管理师考试真题1
帮考网校·2022-01-07高级人力资源管理师考试真题3
帮考网校·2022-01-07高级人力资源管理师《理论知识》真题及答案(二)
帮考网校·2022-01-07高级人力资源管理师《理论知识》真题及答案(二)
帮考网校·2022-01-07高级人力资源管理师《理论知识》真题及答案(三)
帮考网校·2022-01-07
人力资源管理工资一般多少?
capangri·2020-06-01人力资源管理师如何报考 ?
bengkuolei·2020-06-01现役军人能否报考人力资源管理师?
chanhuhan·2020-06-01人力资源管理师二级考试科目都有哪些?
cepeiguang·2020-06-01一级人力资源师好考吗?
ceruanden·2020-06-01上海人力资源二级在哪里报名?
小三你妈喊你回家吃饭·2020-06-01平时看人力资源挺轻松的,想了解一下工作职责有哪些?
bianliechao·2020-05-29有朋友知道现在人力资源管理专业好就业吗?
benglongtu·2020-05-29马上要面临高考和选择专业,人力资源管理就业前景怎么样?
女爷·2020-05-28本科毕业几年才可以报考三级人力资源管理师呢?
chancoushang·2020-05-28
00:56
人力资源管理师考试对作答有什么要求吗?2020-06-08
00:39
人力资源管理师考试都有哪些题型?2020-06-08
00:51
人力资源管理师考试的通过率高吗?2020-06-08
00:32
人力资源管理师考试的鉴定方式分为哪几种?2020-06-08
00:30
人力资源管理师考试成绩有多久的有效期?2020-06-08

微信扫码关注公众号
获取更多考试热门资料