银行系统(未完成)
来源:互联网 发布:淘宝产品优化 编辑:程序博客网 时间:2024/06/10 09:38
#include <iostream>
#include <string.h>
#include <stdio.h>
#include <iomanip>
using namespace std;
//银行中最大的账户数量
#define MAXACCOUNTNUMBER 20000
//银行卡的开号初始值
#define INITNUMBER 10001
struct Account
{
long accNumber; //卡号
char accName[20]; //户主
char accPwd[10]; //密码
double balance; //余额
char flag[6]; //卡的状态
};
struct login
{
long accNum;
char accPwd[10];
};
//银行中所有卡
Account array[MAXACCOUNTNUMBER];
//银行中银行卡数量
int size=0;
//欢迎界面
void welcome();
//主界面
void mainFrame();
//生成银行中自增卡号
long autoCreament();
//开户
void openAccount();
//存款
void deposit();
//取款
void withdramal();
//销户
void breakAccount();
//查询
void bidaccount();
//退出
void back();
//输出指定卡的信息
void printAccount(Account acc);
//根据卡号查找卡在数组中的下标
int searchAccount(long accNumber);
int main()
{
char loginName[20];
char loginPwd[20];
int i;
//欢迎界面
welcome();
//..
for(i=0;i<3;i++)
{
cout<<"请输入用户名:";
cin>>loginName;
cout<<"请输入密码:";
cin>>loginPwd;
if(strcmp(loginName,"admin")==0&&strcmp(loginPwd,"admin")==0)
{
mainFrame();
break;
}else{
cout<<"用户名或密码输入错误"<<endl;
}
}
return 0;
}
void welcome()
{
cout<<" +----------------------------------+"<<endl;
cout<<" |-------欢迎登陆银行系统-----------|"<<endl;
cout<<" +----------------------------------+"<<endl;
}
void mainFrame()
{
int order;
cout<<" |----------------------------|"<<endl;
cout<<" |-----------1.开户-----------|"<<endl;
cout<<" |-----------2.存款-----------|"<<endl;
cout<<" |-----------3.取款-----------|"<<endl;
cout<<" |-----------4.销户-----------|"<<endl;
cout<<" |-----------5.查询-----------|"<<endl;
cout<<" |-----------6.退出-----------|"<<endl;
cout<<" |----------------------------|"<<endl;
cout<<"请输入操作指令"<<endl;
cin>>order;
switch(order){
case 1:
openAccount();
break;
case 2:
deposit();
break;
case 3:
withdramal();
break;
case 4:
breakAccount();
break;
case 5:
bidaccount();
break;
case 6:
back();
break;
default:
break;
}
}
void openAccount()
{
cout<<"请输入户主:";
cin>>array[size].accName;
cout<<"请输入密码:";
cin>>array[size].accPwd;
cout<<"请输入金额:";
cin>>array[size].balance;
//..
strcpy(array[size].flag,"正常");
//写卡号
array[size].accNumber=autoCreament();
printAccount(array[size]);
size++;
cout<<"开户成功,按任意键返回"<<endl;
fflush(stdin);
getchar();
mainFrame();
}
long autoCreament()
{
if(size==0){
return INITNUMBER;
}else{
return array[size-1].accNumber+1;
}
}
//输出指定卡的信息
void printAccount(Account acc)
{
cout<<" |----------------------------------------|"<<endl;
cout<<setiosflags(ios::left)<<" |"<<setw(8)<<"卡号"<<setw(8)<<"户主"<<setw(8)<<"密码"<<setw(8)<<"金额"<<setw(8)<<"状态"<<"|"<<endl;
cout<<setiosflags(ios::left)<<" +----------------------------------------+"<<endl;
cout<<setiosflags(ios::left)<<" |"<<setw(8)<<acc.accNumber<<setw(8)<<acc.accName<<setw(8)<<acc.accPwd<<setw(8)<<acc.balance<<setw(8)<<acc.flag<<"|"<<endl;
cout<<" |----------------------------------------|"<<endl;
}
/*根据卡号查找卡的下标
* 若返回值>=0,卡号是正确
* 若返回值=-1,卡号有误
*/
int searchAccount(long accNumber)
{
int i,pos=-1;
for(i=0;i<size;i++){
if(array[i].accNumber==accNumber){
//找到了这张卡
pos=i;
break;
}
}
return pos;
}
void deposit()
{
long accNum;//存款的账号
double money;//存款的金额
int pos=-1;
cout<<"请输入存款的账号:";
cin>>accNum;
cout<<"请输入存款金额:";
cin>>money;
pos=searchAccount(accNum);
if(pos==-1){
//卡号有误
cout<<"卡号不存在,请重新输入卡号"<<endl;
//...
deposit();
}else{
//展示下存款前卡的信息
cout<<"存款前卡的信息:"<<endl;
printAccount(array[pos]);
//找到了该卡号所对应的卡
array[pos].balance+=money;
//展示存款后卡的信息
cout<<"存款后卡的信息:"<<endl;
printAccount(array[pos]);
cout<<"存款成功,按任意键返回"<<endl;
fflush(stdin);
getchar();
mainFrame();
}
}
void withdramal()
{
long accNum;
double money;
int pos,i;
login a;
char loginPwd[10];
for(i=0;i<3;i++)
{
cout<<"请输入取款账号:";
cin>>a.accNum;
cout<<"请输入密码:";
cin>>a.accPwd;
pos=searchAccount(a.accNum);
if(strcmp(a.accPwd,array[pos].accPwd)==0)
{
cout<<"请输入取款金额:";
cin>>money;
cout<<"取款前卡的信息:"<<endl;
printAccount(array[pos]);
//找到了该卡号所对应的卡
array[pos].balance-=money;
//展示存款后卡的信息
cout<<"取款后卡的信息:"<<endl;
printAccount(array[pos]);
cout<<"取款成功,按任意键返回"<<endl;
fflush(stdin);
getchar();
mainFrame();
break;
}else{
cout<<"用户名或密码输入错误"<<endl;
}
}
}
void breakAccount()
{
long accNum;
double money;
int pos,i;
login a;
char loginPwd[10];
for(i=0;i<3;i++)
{
cout<<"请输入销户账号:";
cin>>a.accNum;
cout<<"请输入密码:";
cin>>a.accPwd;
pos=searchAccount(a.accNum);
if(strcmp(a.accPwd,array[pos].accPwd)==0)
{
strcpy(array[pos].accName,"无");
strcpy(array[pos].accPwd,"无");
strcpy(array[pos].flag,"无");
array[pos].balance=0;
cout<<"销户成功,按任意键返回"<<endl;
fflush(stdin);
getchar();
mainFrame();
break;
}else{
cout<<"用户名或密码输入错误"<<endl;
}
}
}
void bidaccount()
{
login bid;
int i,pos=-1;
cout<<"请输入查询的账号:";
cin>>bid.accNum;
cout<<"请输入账号密码:";
cin>>bid.accPwd;
pos=searchAccount(bid.accNum);
for(i=0;i<3;i++)
{
if(strcmp(bid.accPwd,array[pos].accPwd)==0)
{
cout<<"卡的信息:"<<endl;
printAccount(array[pos]);
//找到了该卡号所对应的卡
cout<<"按任意键返回"<<endl;
fflush(stdin);
getchar();
mainFrame();
}else{
cout<<"用户名或密码输入错误"<<endl;
}
}
}
void back()
{
cout<<" +----------------------------------+"<<endl;
cout<<" |------退出成功,欢迎下次光临------|"<<endl;
cout<<" +----------------------------------+"<<endl;
}
- 银行系统(未完成)
- 银行系统(未完成)
- 银行系统未完成
- 职工信息管理系统(未完成)
- 银行系统(1)
- 银行系统(1)
- 银行系统(完结)
- 银行系统(类)
- XCLCMS内容管理系统项目(未完成)开源啦
- 恶意程序检测系统(未完成稿)
- 银行IT系统方案(26):银行监控系统
- 银行模拟系统(1)
- 银行系统初步(1)
- 银行系统(2改进)
- 银行系统1(改进)
- 银行系统(完结篇)
- 银行系统(初级版)
- test4-6(银行系统)
- 配置java环境变量
- Hibernate ORM 新特性之 Service(Registry)
- 关于kmalloc、vmalloc及kmap
- android AutoCompleteTextView中文搜索及自定义布局及固定显示条数
- .net 上传图片的2中方式
- 银行系统(未完成)
- 第2章:几何方面:六边形面积
- pmon启动流程
- 相似性度量
- Java statement 关闭问题
- 汽车保险
- 有用的网站
- 查询符合条件的 sql agent job
- 工程图之间的标题栏复制