当前位置:文档之家› c课程设计银行储蓄系统

c课程设计银行储蓄系统

c课程设计银行储蓄系统
c课程设计银行储蓄系统

课程设计(论文)任务书

软件工程学院桥梁专业 3 班

一、课程设计(论文)题目银行储蓄系统

二、课程设计(论文)工作自 2011 年 6 月 13 日起至 2011年 6月 20 日止。

三、课程设计(论文) 地点: 软件学院软件实训中心

四、课程设计(论文)内容要求:

1.本课程设计的目的

(1)使学生掌握C++的基本语法以及程序编辑、运行过程;

(2)培养学生掌握程序设计的基本思路和方法;

(3)使学生掌握程序的调试方法;

(4)培养学生分析、解决问题的能力;

(5)提高学生的科技论文写作能力。

2.课程设计的任务及要求

1)基本要求:设计一简易的银行储蓄系统,能承担用户的开户、销户、存款和取款业务。要求使用结构体或对象存储账户信息,系统要求系统以菜单方式工作。

(1)开户(输入姓名、身份证号,如不存在,则新开账户)

(2)销户(如有余额,先取款,再销户)

(3)取款(输入取款金额,账户余额不足时提示重新输入,取款成功后显示账户余额)(4)存款(输入存款金额,存款成功后显示账户余额)

(5)查询(输入帐号,查询该帐号所有信息)

2)创新要求:

在基本要求达到后,可进行创新设计,如改善算法性能;对系统进行功能扩充。3)课程设计论文编写要求

(1)要按照书稿的规格打印誊写课程设计报告

(2)课程设计报告书内容主要包括目录、绪论、正文、小结、参考文献、附录等

(3)课程设计报告书一律使用由学校统一印制的封面,采用黑色墨水工整书写,

并装订成册。如采用计算机打印,应该配上封面装订成册。

4)答辩与评分标准:

(1)完成原理分析:20分;

(2)完成设计过程:40分;

(3)完成调试:20分;

(4)回答问题:20分。

5)参考文献:

(1)刘觉夫.《c++程序设计(第二版)》北京邮电大学出版社

(2)谭浩强《c++面向对象程序设计》清华大学出版社

6)课程设计进度安排

内容天数10地点

构思及收集资料2图书馆

组装与调试3实验室

撰写报告2图书馆、实验室

学生签名:

2011 年6 月13 日

课程设计(论文)评审意见

(1)完成原理分析(20分):优()、良()、中()、一般()、差();(2)设计分析(20分):优()、良()、中()、一般()、差();(3)完成调试(20分):优()、良()、中()、一般()、差();(4)论文撰写(20分):优()、良()、中()、一般()、差();(5)回答问题(20分):优()、良()、中()、一般()、差();(6)格式规范性及考勤是否降等级:是()、否()

评阅人:职称:

2011 年6 月23 日

目录

一、课程设计任务概述 ................. - 4 -

二、算法设计思想及流程图 ......... - 5 -

三、程序清单 ................................. - 7 -

四、程序调试与运行结果 ........... - 13 -

五、设计心得(小结) ............... - 15 -

一、课程设计任务概述

设计一简易的银行储蓄系统,能承担用户的开户、销户、存款和取款业务。要求使用结构体或对象存储账户信息,系统要求系统以菜单方式工作,主要

功能有:

(1)开户(输入姓名、身份证号,如不存在,则新开账户)

(2)销户(如有余额,先取款,再销户)

(3)取款(输入取款金额,账户余额不足时提示重新输入,取款成功后显示账户余额)

(4)存款(输入存款金额,存款成功后显示账户余额)

(5)查询(输入帐号,查询该帐号所有信息)

二、算法设计思想及流程图

2设计思路

首先,我设计了两个类,一个是Account类,旗下有Saving(),Withdraw()和ShouMe ()3个函数。另一个是Bank类,有开户函数Append(),销户函数Delete()和查询函数Query()。

开户函数运用了指针变量,首先设置了一个大小为100的存储空间,运用指针比较方便。通过地址的变化,指向不同的值。每增加一个户,则accNum加1.

存款函数,设置了Balance=Balance+number语句。

取款函数,如果帐号余额不足,则给予提示并不予取款。最后执行Balance=Balance-number。最后显示账户余额。

销户函数,首先判断帐号是否存在。如果能获取ID号,则此账户存在,就不要输出“此账户不存在”了。再把此帐号以后的账户都往前移一个,最后销户成功。

查询函数,先判断账户是否存在,我在查询函数里又设置了存款、取款函数,可以进行存款、取款业务。

在主函数中,设置一个Bank类,设置一个界面,有开户、销户、查询等业务。输入想要的业务,完毕后再返回主界面。

三、程序清单

#include

#include

class Account //Account类

{ public:

Account();

Account(int ID,char na[30],double Balance);

void Saving();

double Withdraw();

void ShowMe();

int getID();

private:

int ID;

char name[30];

double Balance;

};

class Bank //Bank类

{ public:

Bank();

void Append();

void Delete();

void Query();

private:

Account *account[100];

int accNum;

double Balance;

};

Account::Account()

{

Balance=0.0;

}

Account::Account(int id,char na[30],double Bal) {

ID=id;

strcpy(name,na);

Balance=Bal;

}

void Account::Saving() //存款

{ int number;

cout<<"请输入存款金额:";

cin>>number;

Balance=Balance+number;

cout<<"现在您的账户余额为:"<

}

double Account::Withdraw() //取款

{ int number;

cout<<"请输入取款金额:";

cin>>number;

if(Balance

{ cout<<"对不起,您的账户余额不足"<

cout<<"现在您的账户余额为"<

return Balance;

}

void Account::ShowMe() //显示信息

{

cout<<"账户ID:"<

cout<<"名字:"<

cout<<"余额:"<

}

int Account::getID() //获取ID

{ return ID;}

Bank::Bank()

{

for(int i=0;i<100;i++)

account[i]=NULL;

accNum=0;

}

void Bank::Append() //开户

{

int ID;

char na[30];

cout<<"请输入账户ID:";

cin>>ID;

cout<<"请输入账户名字:";

cin>>na;

Account *acc=new Account(ID,na,0);

account[accNum]=acc;

cout<<"开户成功!"<

cout<<"您的信息:";

cout<<"账户ID:"<getID(); cout<<"名字:"<

accNum=accNum+1;

}

void Bank::Delete() //销户

{ int ID;

cout<<"请输入您想销户的ID:";

cin>>ID;

int j;

int k=1,i=0;

while((i

{ if(ID==account[i]->getID())

k=0;

}

if(k)

{ cout<<"此帐号不存在!"<

cout<<"您的账户有余额,请先取出!"<Withdraw();

cout<

for(j=i;j

{ account[j]=account[j+1];}

accNum--;

cout<<"销户成功!"<

}

void Bank::Query() //查询

{ int ID;

char yn;

cout<<"请输入想要查询账户的ID:";

cin>>ID;

int k=1,i=0;

while((i

{ if(ID==account[i]->getID())

k=0;

else

i++;

}

if(k)

{ cout<<"此帐号不存在!"<

cout<<"是否继续?(Y/N)"<

cin>>yn;

}

account[i]->ShowMe();

int choice=0;

cout<<"1:存款"<

cout<<"2:取款"<

cout<<"3:返回"<

cout<<"请输入您的选择";

cin>>choice;

switch(choice)

{ case 1:account[i]->Saving();break;

case 2:account[i]->Withdraw();break;

case 3:break;

}

}

void main()

{ Bank bank;

char yn;

int choice=0;

while (1)

{

cout<<"******欢迎来到银行系统!******"<

cout<<" ******2:销户******"<

cout<<" ******3:查询******"<

cout<<" ******4:退出******"<

cout<<"请输入您的选择:";

cin>>choice;

switch(choice)

{

case 1:bank.Append();break;

case 2:bank.Delete();break;

case 3:bank.Query();break;

case 4:break;

}

cout<

cout<<"是否继续?(Y/N)"; cin>>yn;

if (yn!='y')

break;

}

}

相关主题
文本预览
相关文档 最新文档