#include <iostream>
#include <string>//getline()>>>>wenjian
#include <iomanip>
#include <fstream>
using namespace std;
class ball
{
public:
ball();//默认构造函数
char inter_face();//首页
void addbasketballstar();//添加球员
void delbasketballstar();//删除球员
void show_all();//显示所有球
void change();//修改信息
void select();//查询球员
void sele();// 按年薪查询
void saveall();//保存新增加的球员
private:
string name;//姓名
string address;//球队
string number;//球衣号号码
string duty;//球场上的位置
double nianxin;//年薪
};
ball::ball()
{
name = "\0";
address = "\0";
number = "\0";
duty = "\0";
nianxin= 0;
}//首页
char ball::inter_face()
{
cout<<"\t\t★★★★★★★★★★★★★★★★★★★★★★★★★★" <<endl
<<"\t\t★★★★★★★★★★★★★★★★★★★★★★★★★★" <<endl
<<"\t\t★★★★★★★★★★★★★★★★★★★★★★★★★★" <<endl
<<"\t\t " <<endl
<<"\t\t 设计者 " <<endl
<<"\t\t 学号 " <<endl
<<"\t\t★★★★★★★★★★★★★★★★★★★★★★★★★★" <<endl
<<"\t\t★★★★★★★★★★★★★★★★★★★★★★★★★★" <<endl
<<"\t\t " <<endl
<<"\t\t 1. 添加新球员 4. 修改信息 " <<endl
<<"\t\t " <<endl
<<"\t\t 2. 删除球员 5. 查询球员 " <<endl
<<"\t\t " <<endl
<<"\t\t 3. 显示所有球员 6.按年薪查询 " <<endl
<<"\t\t " <<endl
<<"\t\t 0.退出 " <<endl<<endl
<<"\t\t 选择: ";
char choose;
cin >>choose;
cin.clear();
cin.sync();
return choose;
}
//添加球员
void ball::addbasketballstar()
{
cout <<endl <<"根据下面提示输入新球员信息" <<endl <<endl <<"姓名 :" ;
cin >>name;
cin.clear(); cin.sync();
cout <<"球衣号: ";
cin >>number;
cin.clear(); cin.sync();
cout <<"年薪(百万): ";
cin >>nianxin;
cin.clear(); cin.sync();
cout <<"球场上的位置 : ";
cin >>duty;
cin.clear(); cin.sync();
cout <<"球队 : ";
cin >>address;
cin.clear(); cin.sync();
saveall();
cout <<endl <<endl <<"新球员信息已经保存好!!!!!" <<endl <<endl;
getchar();
}
//删除球员
void ball::delbasketballstar()
{
ofstream ofp("star.txt", ios::out);
ifstream ifp2("star2.txt", ios::in);
if (!ofp || !ifp2)
{
cout <<endl <<"对不起!!!!找不到文件!!!!" <<endl;
getchar(); cin.sync();
return;
}
string sign;
cout <<endl <<"你要删除输入姓名:";
cin >>sign;
string star;
bool flag = true;
string str;
while (ifp2 >>name >>number)
{
getline(ifp2,str);
if ( sign==name )
{
cout <<endl <<"你想删除的球员:" <<endl
<<endl<<"姓名"<<"\t\t"<<"球衣号"<<"\t\t"<<"年薪 (百万)"<<"\t"<<"球场上的位置"<<"\t"<<"球队"<<endl;
cout <<setiosflags(ios::left) <<setw(17) <<name
<<" " <<number <<str <<endl;
int d;
cout<<"确定要删除请按‘1’键:";
cin>>d;
if(d==1)
{
flag = false;
}
break;
}
ofp <<setiosflags(ios::left) <<setw(17) <<name
<<" " <<number <<str <<endl;
}
if (flag)
{
cout <<endl <<"对不起!!! 本次删除失败!!!!" <<endl <<endl;
}
else
{
while (getline(ifp2, str))
{
ofp << str <<endl;
getchar;
}
ofp.close();
ifp2.close();
ofstream out("star2.txt",ios::out);
ifstream in("star.txt",ios::in);
if(!out||!in)
{
cout<<endl<<"不能打开文件 "<<endl<<endl;
return;
}
while(getline(in,str))
{
out<<str<<endl;
}
out.close();
in.close();
cout<<endl<<"已删除 "<<endl<<endl;
getchar() ;
}
getchar();
cin.sync();
}
void ball::sele()//按年薪查询
{
ifstream ifp2("star2.txt",ios::in);
if(!ifp2)
{
cout<<endl<<"不能打开文件 "<<endl<<endl;
getchar();
return;
}
double sign(0);
cout<<endl<<"请输入你要查询的年薪";
cin>>sign;
cin.clear();cin.sync();
string star;
bool flag=true;
string str;
while(ifp2>>name>>number>>nianxin>>duty>>address)
{
getline(ifp2, str);
if(sign<=nianxin)
{
cout <<"姓名"<<"\t\t"<<"球衣号"<<"\t\t"<<"年薪(百万)"<<"\t"<<"球场上的位置"<<"\t"<<"球队 "<<endl;
cout <<star <<endl;
cout <<setiosflags(ios::left) <<setw(17) << name
<<" " << setw(16) << number <<" "
<< setw(18) << nianxin<<" "
<< setw(14) << duty <<" "
<< setw(20) << address <<endl;
}
}
cout<<"提示:按'0'键再按回车返回主菜单"<<endl;
for(int k;cin>>k==0;)
{
flag = false;
break;
}
}
//显示所有球员
void ball::show_all()
{
ifstream ifp2("star2.txt",ios::in);
if (!ifp2)
{
cout <<endl <<"对不起!!!!没有找到文件!!!!!" <<endl;
getchar();
return;
}
bool flag = true;
string record;
while (getline(ifp2, record))
{
if (flag)
{
cout <<endl <<"所有球员信息如下: "<<endl <<"姓名"<<"\t\t"<<"球衣号"<<"\t\t"<<"年薪(百万) "<<"\t"<<"球场上的位置"<<"\t"<<"球队 "<<endl;
}
cout <<record <<endl;
flag = false;
}
if (flag)
{
cout <<endl <<"你的记录中没有球员!!!!!" <<endl <<endl;
}
else
{
cout <<endl <<"所有球员已经全部显示出来!!!!!" <<endl <<endl;
}
getchar();
}
//修改信息
void ball::change()
{
ofstream ofp("star.txt", ios::out);
ifstream ifp2("star2.txt", ios::in); //
if (!ofp || !ifp2)
{
cout <<endl <<"对不起!!!!文件打不开!!!!" <<endl;
getchar();
return;
}
string sign;
cout <<endl <<"输入你要修改的姓名:";
cin >>sign;
string star;
bool flag = true;
string str;
while (ifp2 >>name >>number)
{
getline(ifp2, str);
if ( sign==name )
{
cout <<endl <<"你想修改的球员:"<<endl <<"姓名"<<"\t\t"<<"球衣号"<<"\t\t"<<"年薪(百万)"<<"\t"<<"球场上的位置"<<"\t"<<"球队"<<endl;
cout<<star<<endl;
cout <<setiosflags(ios::left) <<setw(17) << name
<<" " << setw(16) << number <<" "
<< setw(18) << nianxin<<" "
<< setw(14) << duty <<" "
<< setw(20) << address <<endl;
flag=false;
break;
}
ofp<<setiosflags(ios::left) <<setw(17) << name
<<" " <<number<<str<<endl;
}
if(flag)
{
cout<<endl<<"对不起,球员中没你找的人! "<<endl<<"你是否要添加他;不添加按'0'键,添加按'1'键再按回车进入添加; "<<endl;
}
else
{
while(getline(ifp2,str))
{
ofp<<str<<endl;
}
ofp<<str<<endl;
}
ofp.close();
ifp2.close();
ofstream out("star2.txt",ios::out);
ifstream in("star2.txt", ios::in);
if (!out || !in)
{
cout <<endl <<"对不起!!!!文件打不开!!!!" <<endl<<endl;
getchar();
return;
}
while (getline(in, str))
{
out <<str <<endl;
}
out.close();
in.close();
cout<<endl <<"请按以下步骤输入修改:" <<endl;
cout<<"姓名 :"
C++NBA球员管理系统
需积分: 35 133 浏览量
2018-05-16
22:41:26
上传
评论 4
收藏 5KB ZIP 举报
自在观观自在
- 粉丝: 4
- 资源: 10
最新资源
- 基于STM8S103F3P6+STM8S207C8T6+STM32F103 单片机三合一最小系统开发板硬件(原理图+PCB)工程
- 基于C语言实现的打印杨辉三角
- 基于ASIO的插件式服务器,支持TCP,UDP,串口,Http,Websocket统一化的数据接口,隔离开发人员和IO之间的操作
- stm32 usb接口通信
- Chessmate是一款完全免费的国际象棋学习软件,支持引擎分析,学开局、残局、棋书解读、大数据分析等功能
- 总结整理的Android面试Java基础知识点面试资料精编汇总文档资料合集.zip
- .android_lq
- FDN5632N-VB一款SOT23封装N-Channel场效应MOS管
- 毛老板-2404250902.amr
- Java类加载流程(双亲委派)流程图.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈