足球俱乐部会员管理系统课程设计
- 格式:doc
- 大小:86.00 KB
- 文档页数:16
《足球俱乐部会员管理系统》
程序设计基础课程设计报告
专 业: 电子信息工程
班 级: 2007级 1 班
学 号: 2007082019
姓 名: 刘 平
指导教师: 常 耀 辉
二OO八 年 六月二十四日
1
目 录
一.编程目的: ..................................... 2
二.设计要求: ..................................... 2
三.各函数功能说明: ................................ 2
四.流程图: ..................................... 13
五.总结: ....................................... 14
参考书目: ....................................... 15
2 一.编程目的:
编写一个足球俱乐部会员管理系统,每个会员应该包含如下信息:
序号、用户名、性别、年龄、职业、资金、时间以及入会时间等。
可以任意添加会员,删除会员,编辑会员信息,并且具有保存和读入会员信息的功能以级分别根据年龄段和入会时间统计人数情况。
二.设计要求:
用类、数组建立数据库(最少包含6条记录以及具有下列功能)
1.序号必须唯一
2.插入记录:新会员入会登记
3.删除记录:会员不想在入会则必须将其记录删除
4.修改记录:只能修改会员的资金情况
5.查询记录:按序号查询会员所剩资金
按用户名查询用户相关信息(如有同名,则必须将其记录全部显示)
6.统计记录:根据年龄统计不同年龄段的人数
根据入会时间统计不同时间段人数情况
7.在屏幕上输出全部会员的记录
三.各函数功能说明:
函数源代码以及函数的功能:
#include
#include
#include
#include 3 #define n 100
using namespace std;
class Chain;
class Associator
{
public:
Associator *ptrnext;
void input(Associator *p,int ji) //该函数使得序号唯一
{
int j;
for(;;)
{
cout<<"序号:";
cin>>xh;
for(j=0;j
if(p[j].i==1&&p[j].xh==xh)
{
cout<<"序列号不能相同"<
continue;
}
break;
}
cout<<"用户名:";
cin>>yhm;
cout<<"性别:";
cin>>xb;
cout<<"年龄:";
cin>>nl;
cout<<"职业:"; 4 cin>>zhy;
cout<<"资金:";
cin>>zj;
cout<<"时间:";
cin>>sj;
i=1;
}
void input(ifstream &in) //新会员入会登记
{
in>>yhm>>xb>>
nl>>zhy>>zj>>sj;
i=1;
}
void display()
{
cout<
<
}
void display(ofstream &out)
{
out<
<
}
friend class Chain;
private: 5 int i; //标记,0删除,1未删
char xh[15];
char yhm[15];
char xb[2];
int nl;
char zhy[18];
float zj;
char sj[20];
};
class Chain
{
public:
Chain()
{
int j;
for(j=0;j
p[j].i=0;
pb.open("associator.txt",ios::in);
if(!pb)
{
cout<<"错误!"<
exit(1);
}
for(ji=0;;ji++)
{
pb>>p[ji].xh;
if(strcmp(p[ji].xh,"*")==0) 6 break;
p[ji].input(pb);
}
pb.close();
}
void input()
{
p[ji].input(p,ji);
ji++;
}
void display()
{
int i;
for(i=0;i
if(p[i].i==1)
p[i].display();
}
void Delete() //会员不想继续入会则必须将其记录删除
{
int j;
char k[15];
cout<<"请输入你想删除的序号:";
cin>>k;
for(j=0;j
if(p[j].i==1&&strcmp(p[j].xh,k)==0)
{ 7 p[j].i=0;
break;
}
if(j==ji)
cout<<"无此人"<
}
void find() //按序号查询会员所剩资金
//按用户名查询用户相关信息
{
char k[10];
int j;
string c;
cout<<"1-查资金 2-查会员信息"<
cin>>c;
if(c=="1")
{
cout<<"请输入你想查的序号:";
cin>>k;
for(j=0;j
if(p[j].i==1&&strcmp(p[j].yhm,k)==0)
{
cout<<"资金为:";
cout<
break;
}
if(j==ji)
cout<<"无此人"<
} 8 if(j==ji)
cout<<"无此人"<
else if(c=="2")
{
cout<<"请输入你想查的姓名:";
cin>>k;
for(j=0;j
if(p[j].i==1&&strcmp(p[j].yhm,k)==0)
{
p[j].display();
break;
}
if(j==ji)
cout<<"无此人"<
}
}
void change() //只能修改会员的资金情况
{
char k[15];
int j,c;
cout<<"请输入你想查的序号:"<
cin>>k;
for(j=0;j
if(p[j].i==1&&strcmp(p[j].xh,k)==0)
{
cout<<"请输入你想重的资金"<
cin>>c;
p[j].zj=c+p[j].zj;