一次性使用的小ATM(笑趴
来源:互联网 发布:混沌战域翅膀进阶数据 编辑:程序博客网 时间:2024/04/30 03:46
#include<stdio.h>
#include<conio.h>
#include<iostream>
using namespace std;
//保存多个不同类型的数据
struct users //自定义的数据类型
{
int id; //卡号
char name[10];
int pwd; //密码
float balance;//余额
} user[20]; //表格 20H 4L
//保存账户的数目
int count = 0;
void createUser()
{
int i=0;
char num[6],ch;
cout<<"请输入要开几个账户:\n";
cin>>count;
for(i=0; i<count; i++)
{
user[i].id=1000+(i+1);
cout<<"\n请输入用户的姓名:\n";
cin>>user[i].name;
cout<<"请输入账户的密码:\n";
int m=0;
while(true)
{
ch=getch();
if(m>5&&ch!='\r')
{
printf("多于六位啦,,输入回车确定\n");
}
else if(ch>='0'&&ch<='9')
{
num[m]=ch;
m++;
putchar('*');
}
else if(ch=='\r')
{
user[i].pwd=(num[0]-'0')*100000+(num[1]-'0')*10000+(num[2]-'0')*1000+(num[3]-'0')*100+(num[4]-'0')*10+(num[5]-'0');
break;
}
}
user[i].balance=0.0f;
}
cout<<"\n"<<"开户成功!"<<endl;
}
void showInfo()
{
if(count==0)
{
cout<<"请先开户!\n";
}
else
{
int i;
cout<<"请输入要查询的账户:\n";
int id=0,m=0;
cin>>id;
for(i=0; i<count; i++)
{
if(id==user[i].id)
{
int q=3;
while(q!=0)
{
cout<<"请输入该账户的密码:"<<endl;
int pwd=0;
cin>>pwd;
if(user[i].pwd==pwd)
{
cout<<"\n\t账号\t姓名\t余额\n";
printf("\t%d\t%s\t%.2f\n",user[i].id,user[i].name,user[i].balance);
break;
}
else
{
q--;
printf("密码错误,您还有%d次机会!\n",q);
continue;
}
}
break;
}
}
if(i>=count)
{
cout<<"账户不存在!"<<endl;
}
}
}
void savemoney()
{
if(count==0)
{
cout<<"请先开户!"<<endl;;
}
else
{
cout<<"请输入您要存钱的账户:"<<endl;
int key,money;
cin>>key;
for(int i=0; i<count; i++)
{
if(key==user[i].id)
{
cout<<"请输入您要往此账户存的金额:"<<endl;
cin>>money;
user[i].balance+=money;
cout<<"存钱成功!"<<endl;
cout<<"此账户内目前有金额:"<<user[i].balance<<endl;
}
}
}
}
void drawmoney()
{
if(count==0)
{
cout<<"请先开户!"<<endl;;
}
else
{
cout<<"请输入您要取钱的账户:"<<endl;
int key,money,mima,i;
cin>>key;
for(i=0; i<count; i++)
{
if(key==user[i].id)
{
int q=3;
while(q!=0)
{
cout<<"请输入该账户的密码:"<<endl;
cin>>mima;
if(user[i].pwd==mima)
{
cout<<"请输入您准备取的金额:"<<endl;
cin>>money;
if(user[i].balance-money<0)
{
cout<<"sorry! money不足!"<<endl;
break;
}
else
{
user[i].balance-=money;
cout<<"取钱成功!"<<endl;
cout<<"此账户内目前剩余金额:"<<user[i].balance<<endl;
break;
}
}
else
{
q--;
cout<<"密码错误,您还有"<<q<<"次机会!\n"<<endl;
continue;
}
}
break;
}
}
if(i>=count)
{
cout<<"账户不存在"<<endl;
}
}
}
void transferaccounts()
{
if(count==0)
{
cout<<"请先开户!"<<endl;;
}
else
{
int key1,mima=0,key2,money;
cout<<"请输入您要登陆的账户名:"<<endl;
cin>>key1;
int b=0;
for(int i=0; i<count; i++)
{
if(key1==user[i].id)
{
int q=3;
while(q!=0)
{
cout<<"请输入该账户的密码:"<<endl;
cin>>mima;
if(user[i].pwd==mima)
{
cout<<"该账户目前剩余"<<user[i].balance<<"金额"<<endl;
cout<<"请输入您准备转账的账户:"<<endl;
cin>>key2;
int a=0,j;
for( j=0; j<count; j++)
{
if(key2==user[j].id)
{
cout<<"请输入你转账的金额:"<<endl;
cin>>money;
if(user[i].balance-money>=0)
{
user[i].balance-=money;
user[j].balance+=money;
printf("您当前剩余%.2f金额且已经转账成功!\n",user[i].balance);
break;
}
else if(user[i].balance-money<0)
{
cout<<"sorry,money不足!"<<endl;
break;
}
}
}
if(j>=count)
{
cout<<"账户不存在!"<<endl;
}
q=0;
}
else
{
q--;
cout<<"密码错误,您还有"<<q<<"次机会!\n"<<endl;
continue;
}
}
break;
}
}
}
}
void showMain()
{
cout<<"\n\t====欢迎使用银行ATM系统===="<<endl;
cout<<"\n\t1.开户"<<endl;
cout<<"\n\t2.存钱"<<endl;
cout<<"\n\t3.取钱"<<endl;
cout<<"\n\t4.查询"<<endl;
cout<<"\n\t5.转账"<<endl;
cout<<"\n\t0.退出"<<endl;
}
int main()
{
while(true)
{
showMain();
int choose=0;
cin>>choose;
if(choose==1)
{
createUser();
}
if(choose==2)
{
savemoney();
}
if(choose==3)
{
drawmoney();
}
if(choose==4)
{
showInfo();
}
if(choose==5)
{
transferaccounts();
}
if(choose==0)
{
break;
};
}
}
#include<conio.h>
#include<iostream>
using namespace std;
//保存多个不同类型的数据
struct users //自定义的数据类型
{
int id; //卡号
char name[10];
int pwd; //密码
float balance;//余额
} user[20]; //表格 20H 4L
//保存账户的数目
int count = 0;
void createUser()
{
int i=0;
char num[6],ch;
cout<<"请输入要开几个账户:\n";
cin>>count;
for(i=0; i<count; i++)
{
user[i].id=1000+(i+1);
cout<<"\n请输入用户的姓名:\n";
cin>>user[i].name;
cout<<"请输入账户的密码:\n";
int m=0;
while(true)
{
ch=getch();
if(m>5&&ch!='\r')
{
printf("多于六位啦,,输入回车确定\n");
}
else if(ch>='0'&&ch<='9')
{
num[m]=ch;
m++;
putchar('*');
}
else if(ch=='\r')
{
user[i].pwd=(num[0]-'0')*100000+(num[1]-'0')*10000+(num[2]-'0')*1000+(num[3]-'0')*100+(num[4]-'0')*10+(num[5]-'0');
break;
}
}
user[i].balance=0.0f;
}
cout<<"\n"<<"开户成功!"<<endl;
}
void showInfo()
{
if(count==0)
{
cout<<"请先开户!\n";
}
else
{
int i;
cout<<"请输入要查询的账户:\n";
int id=0,m=0;
cin>>id;
for(i=0; i<count; i++)
{
if(id==user[i].id)
{
int q=3;
while(q!=0)
{
cout<<"请输入该账户的密码:"<<endl;
int pwd=0;
cin>>pwd;
if(user[i].pwd==pwd)
{
cout<<"\n\t账号\t姓名\t余额\n";
printf("\t%d\t%s\t%.2f\n",user[i].id,user[i].name,user[i].balance);
break;
}
else
{
q--;
printf("密码错误,您还有%d次机会!\n",q);
continue;
}
}
break;
}
}
if(i>=count)
{
cout<<"账户不存在!"<<endl;
}
}
}
void savemoney()
{
if(count==0)
{
cout<<"请先开户!"<<endl;;
}
else
{
cout<<"请输入您要存钱的账户:"<<endl;
int key,money;
cin>>key;
for(int i=0; i<count; i++)
{
if(key==user[i].id)
{
cout<<"请输入您要往此账户存的金额:"<<endl;
cin>>money;
user[i].balance+=money;
cout<<"存钱成功!"<<endl;
cout<<"此账户内目前有金额:"<<user[i].balance<<endl;
}
}
}
}
void drawmoney()
{
if(count==0)
{
cout<<"请先开户!"<<endl;;
}
else
{
cout<<"请输入您要取钱的账户:"<<endl;
int key,money,mima,i;
cin>>key;
for(i=0; i<count; i++)
{
if(key==user[i].id)
{
int q=3;
while(q!=0)
{
cout<<"请输入该账户的密码:"<<endl;
cin>>mima;
if(user[i].pwd==mima)
{
cout<<"请输入您准备取的金额:"<<endl;
cin>>money;
if(user[i].balance-money<0)
{
cout<<"sorry! money不足!"<<endl;
break;
}
else
{
user[i].balance-=money;
cout<<"取钱成功!"<<endl;
cout<<"此账户内目前剩余金额:"<<user[i].balance<<endl;
break;
}
}
else
{
q--;
cout<<"密码错误,您还有"<<q<<"次机会!\n"<<endl;
continue;
}
}
break;
}
}
if(i>=count)
{
cout<<"账户不存在"<<endl;
}
}
}
void transferaccounts()
{
if(count==0)
{
cout<<"请先开户!"<<endl;;
}
else
{
int key1,mima=0,key2,money;
cout<<"请输入您要登陆的账户名:"<<endl;
cin>>key1;
int b=0;
for(int i=0; i<count; i++)
{
if(key1==user[i].id)
{
int q=3;
while(q!=0)
{
cout<<"请输入该账户的密码:"<<endl;
cin>>mima;
if(user[i].pwd==mima)
{
cout<<"该账户目前剩余"<<user[i].balance<<"金额"<<endl;
cout<<"请输入您准备转账的账户:"<<endl;
cin>>key2;
int a=0,j;
for( j=0; j<count; j++)
{
if(key2==user[j].id)
{
cout<<"请输入你转账的金额:"<<endl;
cin>>money;
if(user[i].balance-money>=0)
{
user[i].balance-=money;
user[j].balance+=money;
printf("您当前剩余%.2f金额且已经转账成功!\n",user[i].balance);
break;
}
else if(user[i].balance-money<0)
{
cout<<"sorry,money不足!"<<endl;
break;
}
}
}
if(j>=count)
{
cout<<"账户不存在!"<<endl;
}
q=0;
}
else
{
q--;
cout<<"密码错误,您还有"<<q<<"次机会!\n"<<endl;
continue;
}
}
break;
}
}
}
}
void showMain()
{
cout<<"\n\t====欢迎使用银行ATM系统===="<<endl;
cout<<"\n\t1.开户"<<endl;
cout<<"\n\t2.存钱"<<endl;
cout<<"\n\t3.取钱"<<endl;
cout<<"\n\t4.查询"<<endl;
cout<<"\n\t5.转账"<<endl;
cout<<"\n\t0.退出"<<endl;
}
int main()
{
while(true)
{
showMain();
int choose=0;
cin>>choose;
if(choose==1)
{
createUser();
}
if(choose==2)
{
savemoney();
}
if(choose==3)
{
drawmoney();
}
if(choose==4)
{
showInfo();
}
if(choose==5)
{
transferaccounts();
}
if(choose==0)
{
break;
};
}
}
阅读全文
0 0
- 一次性使用的小ATM(笑趴
- ATM小项目
- ATM小程序
- [android 小知识] 一次性关闭所有的Activity
- Java中用面向过程做的小“ATM”机
- 一个用java模拟ATM操作的小程序
- 关于atm使用
- 一次性解除Sqlite Developer使用限制的方法
- JSON使用案例--一次性解析比较大的json文件
- 【jQuery】使用one()方法绑定元素的一次性事件
- 【JQuery】使用one()方法绑定元素的一次性事件
- Linux 系统管理之一次性定时任务 at 的使用
- 全世界95%的ATM机还在使用Windows XP
- 一次性登陆密码的实现
- 一、ATM的基本概念
- ATM的异步
- 糊涂的ATM
- 简易的ATM机
- fcntl
- QiYuAdmin-metronic首页的js和css介绍(SpringBoot项目实战)
- sql 中 limit 与 limit,offset连用的区别
- STL编程题-集合动态修改
- Spring 使用注解方式进行事务管理
- 一次性使用的小ATM(笑趴
- java 反射机制小结
- ServletConfig使用说明
- 怎样才算好代码
- 基于K近邻法的手写数字图像识别
- 最长公共子序列(LCS)
- 微信小程序:如何创建一个小程序页面?
- avl tree的插入删除操作代码
- ARIMA时间序列分析