📄 video0.cpp
字号:
#include<iostream.h>
#include<fstream.h>
#include<iomanip.h>
#include<string.h>
#include<stdio.h>
#include<stdlib.h>
class Videodiscs
{
private:
char vname[10];
char vtype[10];
char vactor[20];
char state[10];
char reader[10];
public:
Videodiscs();
~Videodiscs();
void luru();
char *getname();
void shuchu();
void change();
void read();
void write();
};
Videodiscs::Videodiscs()
{}
Videodiscs::~Videodiscs()
{}
char *Videodiscs::getname()
{
return vname;
}
void Videodiscs::luru()
{
cout<<"请输入影碟信息"<<endl;
cout<<"请输入影碟名称"<<endl;
cin>>vname;
cout<<"请输入影碟类型"<<endl;
cin>>vtype;
cout<<"请输入影碟主演"<<endl;
cin>>vactor;
cout<<"请输入影碟是否可借(“是”或“否”)"<<endl;
cin>>state;
while(strcmp(state,"是")!=0&&strcmp(state,"否")!=0)
{cout<<"错误请重新输入!"<<endl;
cin>>state;
}
cout<<"读者:"<<endl;
cin>>reader;
}
void Videodiscs::shuchu()
{
cout<<setw(8)<<setiosflags(ios::left)<<vname<<setw(10)<<setiosflags(ios::left)<<vtype<<setw(10)<<setiosflags(ios::left)<<vactor<<setw(8)<<setiosflags(ios::left)<<state<<
setw(8)<<setiosflags(ios::left)<<reader<<endl;
}
void Videodiscs::change()
{ cout<<"请输入要借出或还入的影碟信息:"<<endl;
cout<<"可借否(是,否):"<<endl;
cin>>state;
if (strcmp(state,"是")!=0&&strcmp(state,"否")!=0)
{ cout<<"错误请重新输入!:"<<endl;
cin>>state;}
cout<<"请输入读者或输入无人读"<<endl;
cin>>reader;
cout<<"你刚刚输入影碟信息如下:"<<endl;
shuchu();
}
Videodiscs information;
void menu()
{
cout<<" 〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓"<<endl;
cout<<" Ψ‖简单的影碟出租系统‖Ψ"<<endl;
cout<<" 〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓"<<endl;
cout<<" "<<endl;
cout<<" 0.退出系统 "<<endl;
cout<<" "<<endl;
cout<<" 1.影碟信息录入 "<<endl;
cout<<" "<<endl;
cout<<" 2.影碟信息借出或还入"<<endl;
cout<<" "<<endl;
cout<<" 3.影碟信息删除 "<<endl;
cout<<" "<<endl;
cout<<" 4.影碟信息输出 "<<endl;
cout<<" "<<endl;
cout<<" 请选择操作(0=======4) "<<endl;
cout<<" "<<endl;
}
void read()
{
ifstream afile("yingdie.txt",ios::nocreate);
afile.read((char*)&information,sizeof information);
}
void write()
{
ofstream bfile("yingdie.txt",ios::app);
bfile.write((char*)&information,sizeof information);
}
void input(void)
{
char ch;
information.luru();
write();
cout<<"你还要输入下一个影碟信息吗(Y/N)!"<<endl;
cin>>ch;
if(ch=='Y'||ch=='y')
input();
}
void change()
{char ch;
int p=0,l=0;
cout<<"请输入要借出或还入的影碟名称:"<<endl;
cin>>ch;
ifstream efile("yingdie.txt",ios::nocreate);
while(efile.good())
{ efile.seekg(sizeof(information)*p);
if(efile.read((char *) &information,sizeof information))
{if(ch==*information.getname())
{
information.shuchu();
ch=0;
information.change();
ofstream ffile("yingdie.txt",ios::nocreate|ios::in);
ffile.seekp(sizeof(information)*p);
ffile.write((char *) &information,sizeof information);
ffile.close();
l++;
return;
}
}
p++;
}efile.close();
if(l!=1)
cout<<"没有你所要修改的影碟信息!"<<endl;
}
void shanchu()
{
char ch;
cout<<"请输入要删除的影碟名称:"<<endl;
cin>>ch;
ifstream out("yingdie",ios::nocreate);
ofstream in("yingdie.txt",ios::trunc);
while(out)
{ if(out.read((char*)&information,sizeof information))
if(ch!=*information.getname())
{
in.write((char*)&information,sizeof information);
}
}
in.close();
out.close();
ofstream gfile("yingdie.txt",ios::trunc);
gfile.close();
ifstream ifile("yingdie.txt",ios::nocreate);
ofstream hfile("yingdie.txt",ios::trunc);
while(ifile)
{
if(ifile.read((char*)&information,sizeof information))
hfile.write((char *)&information,sizeof information);
}
ifile.close();
hfile.close();
}
void output()
{
int i=0;
ifstream cfile("yingdie.txt",ios::nocreate);
while(cfile)
{
if( cfile.read((char *)&information,sizeof information))
{
information.shuchu();
i++;
}
}
cout<<setw(8)<<"名称"<<setw(10)<<"类型"<<setw(10)<<"主演"<<setw(8)<<"可否借"<<setw(8)<<"读者"<<endl;
if(i!=0)
cout<<"一共有"<<i<<"个影碟信息"<<endl;
else
cout<<"还没有输入影碟信息"<<endl;
}
void select()//选择菜单函数
{
int ch;
do{
cin>>ch;
switch(ch)
{
case 0:exit(0);menu();break;
case 1:input();menu();;break;
case 2:change();menu();break;
case 3:shanchu();menu();break;
case 4:output();menu();break;
default :menu();cout<<"输入无效≌请重新输入(0======== 4)"<<endl;break;
}
}while(1);
}
void main()
{
menu();
select();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -