银行账户管理系统说明书.docx
《银行账户管理系统说明书.docx》由会员分享,可在线阅读,更多相关《银行账户管理系统说明书.docx(33页珍藏版)》请在冰豆网上搜索。
银行账户管理系统说明书
银行账目管理系统说明书
一:
需求分析
通过与银行工作人员交流了解:
随着银行业务的推陈出新以及这些业务为客户带来的便利,使银行吸引了越来越多的客户,一切都使银行帐目的管理越来越重要。
银行帐目管理系统是针对银行帐目的日常管理而设计。
银行操作系统不仅要求操作方便而且要求界面简洁,它需要实现帐目管理,用户查询和查询统计等几个功能。
其中帐目管理又包含了开户、销户、存款、取款和修改信息的功能。
用户可以通过不同的方式来查询需要的信息。
通过该系统的设计实现,使银行部门更好地进行业务管理,为客户提供更佳优质的服务。
二:
组员分工
杨修丽:
界面以及类的实现中的信息录入,删除和查询。
何颖:
菜单和类的实现中的设置输入格式和信息的修改。
姜佳宁:
类的定义和对文件的输入,修改。
三:
系统总框图
四:
运行环境
MicrosoftVisualC++。
五:
每个模块的设计分析
1.类的定义:
classastronaut
{
private:
intmaxnum;
intsno;
intcapital;
floatrate;
charname[5];
charsex[2];
charpnum[10];
charfolk[2];
chartelephone[10];
charaddress[30];
chartime[2];
public:
astronaut();
~astronaut();
voidenter();
voiddisplay();
voidsetsno(inttemp);
intgetsno();
char*getname();
voidchange();
voidread();
voidwrite();
};
2.类的实现:
astronaut:
:
astronaut()
{}
astronaut:
:
~astronaut()
{}
intastronaut:
:
getsno()
{
returnsno;
}
char*astronaut:
:
getname()
{
returnname;
}
voidastronaut:
:
setsno(inttemp)
{
sno=temp;
}
voidastronaut:
:
enter()
{
//对信息的输入
}
voidastronaut:
:
display()
{
cout<telephone<}
voidastronaut:
:
change()
{
//对信息的修改
}
3.对文件的管理:
astronautinformation;
voidmenu()
{
cout<<"请选择操作(0——4)"<cout<<""<}
voidread()
{
ifstreamafile("astronaut.txt",ios:
:
nocreate);
afile.read((char*)&information,sizeofinformation);
}
voidwrite()
{
ofstreambfile("astronaut.txt",ios:
:
app);
bfile.write((char*)&information,sizeofinformation);
}
voidinput(void)
{
charch;
information.enter();
write();
cout<<"你还要输入下一位用户的信息吗(Y/N)!
"<cin>>ch;
if(ch=='Y'||ch=='y')
{
input();
}
}
voidchange()
{
//对文件信息的修改
}
voidomit()//删除函数
{
//对文件信息删除
}
voidoutput()
{
//对文件查询
}
4.界面的实现:
voidselect()//选择菜单函数
{
运用switch语句进行编写从0到4的各个出口,如果输入的不是0到4的数,则default:
default:
menu();
cout<<"输入无效请重新输入(0——4)"<break;
}
voidmain()
{
cout<<"姓名:
杨修丽学号:
2009131038班级:
电子091班"<cout<<""<cout<<"姓名:
何颖学号:
2009131009班级:
电子091班"<cout<<""<cout<<"姓名:
姜佳宁学号:
2009131012班级:
电子091班"<cout<<""<cout<<"课程设计名称:
银行用户信息管理系统"<cout<<""<cout<<"操作流程:
"<cout<<""<cout<<"输入“1”——用户信息录入"<cout<<""<cout<<"输入“2”——用户信息修改"<cout<<""<cout<<"输入“3”——用户信息删除"<cout<<""<cout<<"输入“4”——用户信息查询"<cout<<""<cout<<"输入“0”——退出系统"<cout<<""<menu();
select();
}
六:
列出所有定义的函数及说明
classastronaut//银行用户信息类
{
private:
intmaxnum;
intsno;
intcapital;
floatrate;
charname[5];
charsex[2];
charpnum[10];
charfolk[2];
chartelephone[10];
charaddress[30];
chartime[2];
public:
astronaut();
~astronaut();
voidenter();
voiddisplay();
voidsetsno(inttemp);
intgetsno();
char*getname();
voidchange();
voidread();
voidwrite();
};
astronaut:
:
astronaut()//构造函数,函数体为空
{}
astronaut:
:
~astronaut()//析构函数,函数体为空
{}
intastronaut:
:
getsno()//返回用户帐号
{
returnsno;
}
char*astronaut:
:
getname()//返回用户姓名
{
returnname;
}
voidastronaut:
:
setsno(inttemp)//设置用户姓名
{
sno=temp;
}
voidastronaut:
:
enter()//将信息传入文件
{
ifstreamtfile("max.txt",ios:
:
binary|ios:
:
nocreate);//ifstream默认以输入//方式打开文件,而ofstream默认以输出方式打开文件。
例如:
//ifstreamfile2("c:
pdos.def");是以输入方式打开文件。
//ofstreamfile3("c:
x.123");是以输出方式打开文件。
if(tfile)//如果tfile不为空
{
tfile.read((char*)&maxnum,sizeofmaxnum);
}
else
{
maxnum=1;
}
tfile.close();
sno=maxnum++;
ofstreamofile("max.txt");
ofile.write((char*)&maxnum,sizeofmaxnum);
tfile.close();
cout<<"输入用户信息"<cout<<"用户姓名:
"<cin>>name;
cout<<"性别(男——A,女——B):
"<cin>>sex;
while(strcmp(sex,"A")!
=0&&strcmp(sex,"B")!
=0)//设置用户性别,不是AB则错误。
{
cout<<"错误请重新输入!
"<cin>>sex;
}
cout<<"居民身份证号码:
"<cin>>pnum;
cout<<"民族:
"<cin>>folk;
cout<<"联系电话:
"<cin>>telephone;
cout<<"家庭住址:
"<cin>>address;
cout<<"本金"<cin>>capital;
cout<<"利率"<cin>>rate;
cout<<"存款日期"<cin>>time;
cout<<"到期日期"<cin>>time;
}
voidastronaut:
:
display()//设置用户信息如何显示
{//set(4),则表示此后面设置的变量占地地方不大于4时等于4,大于时是本身大小。
cout<telephone<}
voidastronaut:
:
change()对用户信息的修改
{
cout<<"请输入要修改用户的信息:
"<cout<<"姓名是不是要改写(Y/N)"<charch;
cin>>ch;
if(ch=='Y'||ch=='y')
{
cout<<"请输入新姓名:
"<cin>>name;
}
cout<<"性别(男——A,女——B):
"<cin>>sex;
if(strcmp(sex,"A")!
=0&&strcmp(sex,"B")!
=0)
{
cout<<"错误请重新输入!
:
"<cin>>sex;
}
cout<<"居民身份证号码:
"<cin>>pnum;
cout<<"民族:
"<cin>>folk;
cout<<"联系电话:
"<cin>>telephone;
cout<<"家庭住址:
"<cin>>address;
cout<<"本金"<cin>>capital;
cout<<"利率"<cin>>rate;
cout<<"存款日期"<cin>>time;
cout<<"到期日期"<cin>>time;
cout<<"你刚刚输入的用户信息如下:
"<display();
}
voidmenu()//菜单项
{
cout<<"请选择操作(0——4)"<cout<<""<}
voidread()//对文件的读
{
ifstreamafile("astronaut.txt",ios:
:
nocreate);
afile.read((char*)&information,sizeofinformation);
}
voidwrite()//对文件中用户的写入
{
ofstreambfile("astronaut.txt",ios:
:
app);
bfile.write((char*)&information,sizeofinformation);
}
voidinput(void)//对文件中用户的输入
{
charch;
information.enter();
write();
cout<<"你还要输入下一位用户的信息吗(Y/N)!
"<cin>>ch;
if(ch=='Y'||ch=='y')
{
input();
}
}
voidchange()//对文件中用户的修改
{
intch,p=0,l=0;
cout<<"请输入你要修改的用户的号码:
"<cin>>ch;
ifstreamefile("astronaut.txt",ios:
:
nocreate);
while(efile.good())
{
efile.seekg(sizeof(information)*p);
if(efile.read((char*)&information,sizeofinformation))
{
if(ch==information.getsno())
{
information.display();
ch=0;
information.change();
ofstreamffile("astronaut.txt",ios:
:
nocreate|ios:
:
in);
ffile.seekp(sizeof(information)*p);
ffile.write((char*)&information,sizeofinformation);
ffile.close();
l++;
return;
}
}
p++;
}
efile.close();
if(l!
=1)
cout<<"没有你所要修改的用户信息!
"<}
voidomit()//对文件中用户的删除
{
intch;
cout<<"请输入要删除的用户的号码:
"<cin>>ch;
ifstreamout("astronaut.txt",ios:
:
nocreate);
ofstreamin("astronaut1.txt",ios:
:
trunc);
while(out)
{
if(out.read((char*)&information,sizeofinformation))
if(ch!
=information.getsno())
{
in.write((char*)&information,sizeofinformation);
}
}
in.close();
out.close();
ofstreamgfile("astronaut.txt",ios:
:
trunc);
gfile.close();
ifstreamifile("astronaut1.txt",ios:
:
nocreate);
ofstreamhfile("astronaut.txt",ios:
:
trunc);
while(ifile)
{
if(ifile.read((char*)&information,sizeofinformation))
hfile.write((char*)&information,sizeofinformation);
}
ifile.close();
hfile.close();
}
voidoutput()//查询
{
inti=0;
ifstreamcfile("astronaut.txt",ios:
:
nocreate);
while(cfile)
{
if(cfile.read((char*)&information,sizeofinformation))
{
information.display();
i++;
}
}
if(i!
=0)
cout<<"一共有"<
else
cout<<"还没有输入用户信息"<}
voidselect()//选择菜单函数
{
intch;
do{
cin>>ch;
switch(ch)
{
case1:
input();
menu();
break;
case2:
change();
menu();
break;
case3:
omit();
menu();
break;
case4:
output();
menu();
break;
case5:
output();
menu();
break;
case0:
exit(0);
menu();
break;
default:
menu();
cout<<"输入无效请重新输入(0——5)"<break;
}
}while
(1);
}
voidmain()//主函数,界面
{
cout<<"姓名:
杨修丽学号:
2009131038班级:
电子091班"<cout<<""<cout<<"姓名:
何颖学号:
2009131009班级:
电子091班"<cout<<""<cout<<"姓名:
姜佳宁学号:
2009131012班级:
电子091班"<cout<<""<cout<<"课程设计名称:
银行用户信息管理系统"<cout<<""<cout<<"操作流程:
"<cout<<""<cout<<"输入“1”——用户信息录入"<cout<<""<cout<<"输入“2”——用户信息修改"<cout<<""<cout<<"输入“3”——用户信息删除"<cout<<""<cout<<"输入“4”——用户信息查询"<cout<<""<cout<<"输入“0”——退出系统"<cout<<""<menu();
select();
}
七:
使用说明(操作手册)
八:
程序源代码:
#include
#include
classastronaut
{
private:
intmaxnum;
intsno;
intcapital;
floatrate;
charname[5];
charsex[2];
charpnum[10];
charfolk[2];
chartelephone[10];
charaddress[30];
chartime[2];
public:
astronaut();
~astronaut();
voidenter();
voiddisplay();
voidsetsno(inttemp);
intgetsno();
char*getname();
voidchange();
voidread();
voidwrite();
};
#include
#include
#include
#include
#include
astronaut:
:
astronaut()
{}
astronaut:
:
~astronaut()
{}
intastronaut:
:
getsno()
{
returnsno;
}
char*astronaut:
:
getname()
{
returnname;
}
voidastronaut:
:
setsno(inttemp)
{
sno=temp;
}
voidastronaut:
:
enter()
{
ifstreamtfile("max.txt",ios:
:
binary|ios:
:
nocreate);
if(tfile)
{
tfile.read((char*)&maxnum,sizeofmaxnum);
}
else
{
maxnum=1;
}
tfile.close();
sno=maxnum++;
ofstreamofile("max.txt");
ofile.write((char*)&maxnum,sizeofmaxnum);
tfile.close();
cout<<"输入用户信息"<cout<<"用户姓名:
"<cin>>name;
cout<<"性别(男——A,女——B):
"<cin>>sex;
while(strcmp(sex,"A")!
=0&&strcmp(sex,"B")!
=0)
{
cout<<"错误请重新输入!
"<cin>>sex;
}
cout<<"居民身份证号码:
"<cin>>pnum;
cout<<"民族:
"<cin>>folk;
cout<<"联系电话:
"<cin>>telephone;
cout<<"家庭住址:
"<cin>>address;
cout<<"本金"<cin>>capital;