📄 lib2.h
字号:
#ifndef LIB2_H
#define LIB2_H
void librarian::init()//从键盘输入 馆员的信息
{ int num,age, tage;
char name[15],sex[3],leve[15];
cout<<"请输入 编号 姓名 年龄 性别 职位 工龄 \n";
cin>>num>>name>>age>>sex>>leve>>tage;
librnnum=num;
strcpy(librnname,name);
librnage=age;
strcpy(librnsex,sex);
strcpy(librnleve,leve);//工作职位
librntage=tage;//工龄
sign=1;//建立馆员信息 设置有效
}
void librarian::printinfo()//打印馆员的信息
{
cout<<librnnum<<"\t"<<librnname<<"\t"<<librnage<<"\t"<<librnsex<<"\t"<<librnleve<<"\t"<<librntage<<endl;
}
void librarian::libtofile(FILE *fl)//向文件中添加此管理员的信息
{
fprintf(fl,"%d %s %d %s %s %d\n",librnnum,librnname,librnage,librnsex,librnleve,librntage);
}
void librarian ::filetolib(FILE *fl)//从文件中获得管理员的信息
{ if(feof(fl)) return;
fscanf(fl,"%d %s %d %s %s %d",&librnnum,librnname,&librnage,librnsex,librnleve,&librntage);
sign=1;
}
int fileread(FILE *fl,librarian lib[],char choice1)//将文件中的信息读出 赋给多个馆员
{ int i=0;
if(fl==NULL)cout<<"打开文件失败!\n" ;
else
{
fseek(fl,0L,2);
if(ftell(fl)<=0) cout<<"该文件为空"<<endl;
else
{
fseek(fl,0L,0);
while(!feof(fl)&&i++<50){
lib[i-1].filetolib(fl);
if(feof(fl)) break;
if(choice1=='4')lib[i-1].printinfo();
}
}
}
return i-1;
}
void filedelormod(FILE *fl,librarian lib[],char chse)//按要求或修改文件中馆员的信息
{
if(chse=='2')cout<<"请输入你要删除的馆员的编号:\n";
else cout<<"请输入你要修改的馆员的编号:\n";
int dcode,j;
char sure;
cin>>dcode;
int n=fileread(fl,lib,'1');
for(j=0;j<n;j++){
if(lib[j].librnnum==dcode){
if(chse=='2')cout<<"你要删除的馆员的具体信息如下:\n";
else cout<<"你要修改的馆员的具体信息如下:\n";
lib[j].printinfo();
if(chse=='2')cout<<"确定删除请按1 其余键取消\n";
else cout<<"确定修改请按1 其余键取消\n";
cin>>sure;
if(sure=='1'&&chse=='2') lib[j].sign=0;
else lib[j].init();
break;
}
}
if(j>n){cout<<"没有找到你要的馆员的信息"<<endl;return;}
fclose(fl);
fl=fopen("librarians.txt","w");
for(j=0;j<n;j++)
if(lib[j].sign) lib[j].libtofile(fl);
}
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -