test5-5(银行系统v1.4)多分支+文件写入写出

程序:

/* 
* 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);  
}



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值