///<paramname="Ba”〉</param>
public Bank(intno, int[]AN,double[]Ba)
{
for(inti=0;i〈no;i++)
{
Accounttmp=newAccount(AN[i],Ba[i]);
accounts[AN[i]] =tmp;
}
}
///〈summary>
///修改
///〈/summary〉
/// <paramname=”no">〈/param〉
///〈paramname="AN”〉〈/param〉
///<paramname="Ba”〉〈/param>
//设置帐户的利率
publicvoidSetInterestRate(intnum,int cir)
{
if (cir ==0)accounts[num]。
ACurrentInterestRate=0。
0288;//活期存款,利率为2。
88%
elseif (cir== 1) accounts[num].ACurrentInterestRate= 0。
0324;//死期存款,利率为3。
24%
elseConsole。
WriteLine(”Error");
}
//利息计算方法
publicdouble InterestPaid(intnum)
{
accounts[num]。
AtotalInterestPaid =accounts[num]。
ABalance*accounts[num]。
ACurrentInterestRate;
return accounts[num]。
AtotalInterestPaid;
}
//帐户存款
publicvoidSaving(intnum, double money)
{
accounts[num]。
ABalance+=money;
}
//帐户提款
public void Withdarw(intnum,doublemoney)
{
accounts[num].ABalance-=money;
}
//帐户结算
publicdoubletotalMoney(int num)
{
accounts[num]。
ABalance +=accounts[num].AtotalInterestPaid;
returnaccounts[num]。
ABalance;
}
//统计银行支付的总利息
publicdoubleBtotalPaid(int no)
{
for(inti=0;i<no;i++)
totalPaid+=InterestPaid(i);
returntotalPaid;
}
}
class Program
{
static voidMain(string[]args)
{
intno;//银行管理的账户数
int[]AN=newint[100];//账户的账号
int[]cir=newint[100];//账户的存款方式
double[] Ba= newdouble[100];
Console.WriteLine("——————-——-欢迎进入银行模拟界面——--—————-");
Console。
WriteLine("请输入银行管理的帐户个数");
no =Int16。
Parse(Console.ReadLine());
Console.WriteLine("请分别输入每个帐户的帐号");
for(int i =0;i〈no; i++)
AN[i] =Int16。
Parse(Console。
ReadLine());
Console.WriteLine(”请分别输入每个帐户的现有存款");
for (inti=0;i〈 no;i++)
Ba[i]=Double。
Parse(Console。
ReadLine());
Bankbank=newBank(no, AN,Ba);//bank对象
Console。
WriteLine(”请分别选择每个帐户的存款方式:
活期存款请输入<0〉,定期存款请输入〈1>");
for(inti = 0;i 〈no; i++)
{
cir[i]=Int32.Parse(Console.ReadLine());
/////////////////////////////////////////
//////////////////////////////////
//bank。
SetInterestRate(i,cir[i]);
bank。
SetInterestRate(AN[i],cir[i]);
///////////////////////////////////
////////////////////////////////////
}
bool moreAccount=true;//用于记录是否有多个账户操作
boolmorechoose=true;//用于记录该帐户是否执行多个操作
intchoose;//用于记录账户选择的操作
while(moreAccount)//是否有多个账户操作
{
Console。
WriteLine(”请输入要执行操作的帐户的帐号”);
int num=Int16.Parse(Console。
ReadLine());
while (morechoose)//是否对一个账户操作多次
{
Console.WriteLine(”请选择要执行的操作:
<0〉从该帐户存款,<1〉从该账户提款,<2>设置该帐户的利率,<3>显示该帐户的利息,〈4〉显示该帐户的结算总额,<5〉统计银行总支付的利息");
choose=Int16。
Parse(Console。
ReadLine());
switch(choose)
{
case0:
Console.WriteLine("请输入要存入的钱数");
doubleInMoney=double。
Parse(Console.ReadLine());
bank。
Saving(num,InMoney);
Console。
WriteLine("您的现有存款为:
”);
Console。
WriteLine(Convert。
ToString(bank。
totalMoney(num)));
Console。
WriteLine("请问还要进行其它操作吗?
<Y>是, ///////////////////////////
strings=Console.ReadLine();
if(s==”y"||s== ”Y”)
{
morechoose=true;
}
elsemorechoose= false;
////////////////////////
break;
case1:
Console。
WriteLine("请输入要取走的钱数");
doubleOutMoney= double。
Parse(Console.ReadLine());
bank.Withdarw(num,OutMoney);
Console.WriteLine("您的现有存款为:
");
Console。
WriteLine(Convert.ToString(bank.totalMoney(num)));
Console。
WriteLine("请问还要进行其它操作吗?
〈Y〉是,<N〉否");
/////////////////////////////
strings2=Console。
ReadLine();
if(s2== ”y” || s2== "Y”)
{
morechoose=true;
}
elsemorechoose=false;
//////////////////////
break;
case2:
Console.WriteLine(”请输入要修改成的存款方式:
<0〉活期存款,〈1>定期存款”);
cir[num] =Int16.Parse(Console.ReadLine());
bank。
SetInterestRate(num, cir[num]);
Console.WriteLine("请问还要进行其它操作吗?
〈Y>是, //////////////////////
////////////////
strings3=Console.ReadLine();
if(s3== "y” ||s3=="Y")
{
morechoose=true;
}
else morechoose=false;
////////////////
////////////////////
break;
case3:
Console。
WriteLine("您的利息为:
");
Console.WriteLine(Convert。
ToString(bank.InterestPaid(num)));
Console。
WriteLine(”请问还要进行其它操作吗?
〈Y>是, ////////////////////////////////
/////////////////////////////
strings4 = Console。
ReadLine();
if(s4=="y” || s4==”Y")
{
morechoose=true;
}
else morechoose=false;
/////////////////////////////
//////////////////////////
break;
case4:
Console。
WriteLine("您的总结算为:
”);
Console.WriteLine(Convert.ToString(bank.totalMoney(num)));
Console.WriteLine("请问还要进行其它操作吗?
〈Y〉是,〈N〉否”);
////////////////////////////
//////////////////////
strings5=Console.ReadLine();
if (s5=="y"||s5==”Y")
{
morechoose= true;
}
else morechoose=false;
//////////////////////
/////////////////////
break;
case5:
Console.WriteLine(”银行总支付的利息为:
");
Console.WriteLine(Convert。
ToString(bank。
BtotalPaid(no)));
Console.WriteLine("请问还要进行其它操作吗?
<Y>是,〈N>否");
//morechoose= bool.Parse(Console.ReadLine());
//////////////////////////////
/////////////////////////
strings6=Console。
ReadLine();
if(s6 =="y"||s6== "Y")
{
morechoose= true;
}
elsemorechoose =false;
//////////////////////////
//////////////////////////////
break;
default:
break;
}
}
Console.WriteLine(”请问还对其他账户操作吗?
〈Y>是, //moreAccount=bool。
Parse(Console.ReadLine());
///////////////////////
////////////////////
string val= Console。
ReadLine();
if(val==”y"||val== ”Y")
{
moreAccount=true;
}
elsemoreAccount =false;
////////////////////
///////////////////////
}
}
}
}
四、实验调试过程及执行结果
六、实验总结
该程序实现了一个简单的银行系统,进入银行系统界面,用户可以输入需要银行管理的账户的个数、每个账户的账号、每个账号的现有存款、设置存款方式(通过选择0、1决定是活期存款还是定期存款),完成输入后,用户可以对输入的账号进行存取款、重新设置利率、显示利息、显示结算总额、银行对各管理的账号的总的支付利息的统计信息,当对一个账号操作完成时还可以选择是否对多个账号操作,即实现系统的多次使用。