test5-5(银行系统v1.4)多分支+文件写入写出
2013-12-06 17:27
495 查看
程序:
/*
* Copyright(c)2013,
*All right reserved.
*文件名称:test5-5.cpp
*作 者:徐驰
*完成日期:2013-12-06
*版 本 号:v1.2
*
*输入描述:指令
*问题描述:银行系统支持多用户
*程序输出:服务项目
*问题分析:略
*算法分析:略
*/
#include<iostream>
#include<cstdlib>
#include<string>
#include<fstream>
using namespace std;
string account[1000];
string pass_word[1000];
double sum[1000];
int num_a=0;
int check_account();
void work(int acc_num);
void main()
{
ifstream infile("bank.txt",ios::in);
if(!infile)
{
cerr<<"open error!"<<endl;
exit(1);
}
while(infile>>account[num_a]>>pass_word[num_a]>>sum[num_a])++num_a;
infile.close();
cout<<"~~~欢迎存钱~~~"<<endl;
work(check_account());
}
<
9075
/p>
/*
* Copyright(c)2013,
*All right reserved.
*文件名称:test5-5.cpp
*作 者:徐驰
*完成日期:2013-12-06
*版 本 号:v1.2
*
*输入描述:指令
*问题描述:银行系统支持多用户
*程序输出:服务项目
*问题分析:略
*算法分析:略
*/
#include<iostream>
#include<cstdlib>
#include<string>
#include<fstream>
using namespace std;
string account[1000];
string pass_word[1000];
double sum[1000];
int num_a=0;
int check_account();
void work(int acc_num);
void main()
{
ifstream infile("bank.txt",ios::in);
if(!infile)
{
cerr<<"open error!"<<endl;
exit(1);
}
while(infile>>account[num_a]>>pass_word[num_a]>>sum[num_a])++num_a;
infile.close();
cout<<"~~~欢迎存钱~~~"<<endl;
work(check_account());
}
#include<iostream> #include<cstdlib> #include<string> using namespace std; extern string account[1000]; extern string pass_word[1000]; extern int num_a; int check_account() { int pass_num=0,i; string acc,pass; do { cout<<"请输入账号:"; cin>>acc; for(i=0;i<num_a;++i) { if(acc==account[i])break; } if(acc!=account[i])cout<<"查无此账号,请重新输入."<<endl; } while(acc!=account[i]); while(1) { cout<<"请输入密码:"; cin>>pass; if(pass==pass_word[i])break; cout<<"输入错误请重新输入。"<<endl; pass_num++; if(pass_num==3) { cout<<"the system has been destroied... "<<endl; exit(1); } } return i; }
#include<iostream> using namespace std; void drop_out(); void search(int acc_num); void withdrawals(int acc_num); void deposit(int acc_num); void transfer(int acc_num); void change_password(int acc_num); void work(int acc_num) { int num; while(1) { cout<<"请输入指令:"<<endl; cout<<"* 1.查询"<<endl; cout<<"* 2.取款"<<endl; cout<<"* 3.存款"<<endl; cout<<"* 4.转账"<<endl; cout<<"* 5.修改密码"<<endl; cout<<"* 0.退出"<<endl; cout<<"* 请输入(0-4):"; cin>>num; switch(num) { case 0:drop_out();break; case 1:search(acc_num);break; case 2:deposit(acc_num);break; case 3:withdrawals(acc_num);break; case 4:transfer(acc_num);break; case 5:change_password(acc_num);break; default :cout<<"try it again~~~"<<endl<<endl; } } }
#include<iostream> using namespace std; extern double sum[1000]; void search(int acc_num) { cout<<"您的余额为:"<<sum[acc_num]<<endl<<endl; }
#include<iostream> #include<string> using namespace std; extern string account[1000]; extern double sum[1000]; extern int num_a; void transfer(int acc_num) { double sum1; int i; string acc; do { cout<<"请输入账号:"; cin>>acc; if(acc!=account[acc_num]) { for(i=0;i<num_a;i++) { if(acc==account[i])break; } if(acc!=account[i])cout<<"查无此账号,请重新输入。"<<endl; } else cout<<"您不能给自己转账。"<<endl; } while(acc!=account[i]||acc==account[acc_num]); while(1) { cout<<"请输入金额:"; cin>>sum1; if(sum1<=sum[acc_num]) { sum[acc_num]=sum[acc_num]-sum1; sum[i]=sum[i]+sum1; cout<<"已向"<<account[i]<<"转账"<<sum1<<"元。"<<"余额:"<<sum[acc_num]; break; } else { cout<<"余额不足,请重新输入。"; } } cout<<endl<<endl; }
#include<iostream> using namespace std; extern string account[1000]; extern double sum[1000]; void withdrawals(int acc_num) { double sum1; int type,time,level; cout<<"请输入金额:"; cin>>sum1; cout<<"请输入类型(0.活期;1.定期):"; cin>>type; sum[acc_num]=sum[acc_num]+sum1; if(type) { cout<<"请输入时间(以月为单位):"; cin>>time; level=(time>=3)+(time>=6)+(time>=12)+(time>=24)+(time>=36)+(time>=60); switch(level) { case 0:cout<<"到期本金:"<<sum[acc_num]<<"利息:"<<sum[acc_num]*time/12.0*0.005;break; case 1:cout<<"到期本金:"<<sum[acc_num]<<"利息:"<<sum[acc_num]*time/12.0*0.031;break; case 2:cout<<"到期本金:"<<sum[acc_num]<<"利息:"<<sum[acc_num]*time/12.0*0.033;break; case 3:cout<<"到期本金:"<<sum[acc_num]<<"利息:"<<sum[acc_num]*time/12.0*0.035;break; case 4:cout<<"到期本金:"<<sum[acc_num]<<"利息:"<<sum[acc_num]*time/12.0*0.044;break; case 5:cout<<"到期本金:"<<sum[acc_num]<<"利息:"<<sum[acc_num]*time/12.0*0.050;break; case 6:cout<<"到期本金:"<<sum[acc_num]<<"利息:"<<sum[acc_num]*time/12.0*0.055;break; } } else { cout<<"您的余额为:"<<sum[acc_num]; } cout<<endl<<endl; }
#include<iostream> using namespace std; extern double sum[1000]; void deposit(int acc_num) { double sum1; while(1) { cout<<"请输入金额:"; cin>>sum1; if(sum1<=sum[acc_num]) { sum[acc_num]=sum[acc_num]-sum1; cout<<"余额:"<<sum[acc_num]; break; } else { cout<<"余额不足,请重新输入。"; } } cout<<endl<<endl; }
#include<iostream> #include<cstdlib> #include<string> using namespace std; extern string pass_word[1000]; int check_account(); void change_password(int acc_num) { string pass1,pass2; int pass_num; while(1) { cout<<"请输入旧密码:"; cin>>pass1; if(pass1==pass_word[acc_num])break; cout<<"输入错误请重新输入。"<<endl; pass_num++; if(pass_num==3) { cout<<"the system has been destroied... "<<endl; exit(1); } } while(1) { cout<<"请输入新密码:"; cin>>pass1; cout<<"请再次输入新密码:"; cin>>pass1; if(pass1==pass2)break; cout<<"输入错误请重新输入。"<<endl; } pass_word[acc_num]=pass1; cout<<"密码已修改。"<<endl; }
#include<iostream> #include<fstream> #include<cstdlib> #include<string> using namespace std; extern int num_a; extern string account[1000]; extern string pass_word[1000]; extern double sum[1000]; void drop_out() { int i; cout<<"欢迎下次存钱~~~"<<endl; ofstream outfile("bank.txt",ios::out); if(!outfile) { cerr<<"open error!!"<<endl; exit(1); } for(i=0;i<num_a;++i) { outfile<<account[i]<<"\t"<<pass_word[i]<<"\t"<<sum[i]<<endl; } outfile.close(); exit(1); }
<
9075
/p>
相关文章推荐
- System startup files
- System startup files
- System startup files
- 11.2.0.4 dataguard环境准备
- 轻量级的cookie 插件
- mongodb数据导入导出以及备份恢复
- json 解析都层数据
- 14周 项目6-字符串操作
- JavaSwing创建表格
- hadoop的datanode新建异常处理
- 新建虚拟机,如何让虚拟机组件可选?
- 【POJ 1961】
- 第一届大学生全国数据挖掘邀请赛#的数据集分析
- java.lang.Exception: DEBUG -- CLOSE BY CLIENT STACK TRACE 的理解
- Mina - 模拟同步请求
- 5.5最短路径
- 微博那点事(2)
- iOS编程之——引用系统外字体(自定义字体)
- Debian的一点快捷设置(补充 ing)
- 当被VPD屏蔽查询不到数据时