银行业务管理系统(算法与数据结构)

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2008-2009学年度第二学期XXXX学院数学与计算机科学学院

《算法与数据结构课程设计》

综合设计报告

课程设计名称:银行业务管理模拟

专业:计算机科学与技术

班级:0X计本(X)班

学号:0X0X030XX

姓名:高XX

指导教师:肖XX

课程设计报告

1.问题的描述和分析

商业银行业务模拟是对商业银行柜面业务进行模拟实习课程。随着金融业和信息技术的不断发展,银行的管理也已经和计算机接轨,实现了信息的数字化管理,了解并掌握商业银行柜台,周期业务的实际操作处理方法,了解现今商业银行综合业务系统的软件应用,着重于对学生实际操作能力的训练,使学生能初步具备工作岗位的适应各个业务的编程操作能力。多了解各行业编程需求,减少学生踏上工作岗位的适应磨合时间,

提高就业竞争力,突出应用型人才的培养目标。 下面我将对现行银行业务管理进行小部分模拟设计。

◆ 写一个上述银行业务管理系统,能够实现一些常用功能,如:制卡,发卡,存款,取款。用于对用户信息进行管理,并能进行修改,查找,显示,求和等操作。

2.算法的设计

概要设计:

◆ (1)实现系统内制卡、发卡功能;

(2)实现系统内帐户和相关帐户管理; (3)实现卡交易和合法性检查; (4)实现卡金融交易积分功能;

(5)实现卡报表功能;

(6)数据以文件形式存储

在编辑过程中,需要使用串,查找等算法,同时需要对输入的信息进行存储。

在制卡发卡后,对用户的信息进行查找,并显示出来。

void load() {

FILE *fp1;

if((fp1=fopen("c://user.txt","r"))==NULL)

{

printf("\nCan not open the file\n");

exit(0);

}

for(N=0;!feof(fp1);N++)

{

fscanf(fp1,"%d%s%s%s%f%d%d",&u[N].cardNO,u[N].name,u[N].adnum,u[N].code,&u[N].left, &u[N].exp,&u[N].flag);

return(N);

}

fclose(fp1);

}

3.数据结构的设计

串是非数值处理中的主要对象,我们一般用串来表示字符流。而这个程序中要处理的就是银行类的字符流,所以我们需要用到串来实现这一功能。串的存储表示有三种形式,第一种是定长顺序存储结构。第二种是块链式存储结构。第三种是堆分配存储结构。

在这里,我们采用串的第一种存储方式——定长顺序存储,而在程序编译时,要给出确定的空间大小,所以我们将串的空间大小设计为100个字符。

#define MAXSIZE 100

结构体定义如下:

struct user u[ ] /*信用卡结构体*/

{

int cardNO; /*卡数*/

char name[20]; /*姓名*/

char adnum[22]; /*信用卡号*/

char code[8]; /*密码*/

float left; /*余额/存款*/

int exp; /*消费*/

int flag; /*确定是新卡还是旧卡*/

}u[M];

4.具体程序的实现

首先是系统内的制卡功能:

#include

#include

#include

#include

#define M 100 /*定义的数组上限*/

int N; /*结构体数组下标量*/

int H; /*帮助确定是否保存文件*/ struct user u[ ] /*信用卡结构体*/

{

int cardNO; /*卡数*/

char name[20]; /*姓名*/

char adnum[22]; /*信用卡号*/

char code[8]; /*密码*/

float left; /*余额/存款*/

int exp; /*消费*/

int flag; /*确定是新卡还是旧卡*/

}u[M];

5.界面设计

本程序的主控菜单如下:

1.申请一个卡号

2.使用这个卡号

3.打印消费记录

4.存款功能

5.取款功能

6.消费功能

7.报表功能

8.查找消费记录

9.修改密码

int menu(void)

{ int x;

do

{

printf("\t\t<*******************menu************************>\n");

printf("\t\t|| (1)Apply for one blank card ||\n");

printf("\t\t|| (2)Use one blank card ||\n");

printf("\t\t|| (3)Print the record ||\n");

printf("\t\t|| (4)Store the money ||\n");

printf("\t\t|| (5)Fetch the money ||\n");

printf("\t\t|| (6)Spend the money ||\n");

printf("\t\t|| (7)Save the file ||\n");

printf("\t\t|| (8)Search the record ||\n");

printf("\t\t|| (9)Change the passward ||\n");

printf("\t\t|| (0)quit the system ||\n");

printf("\t\t\tPlease input your choice (0-10):( )\b\b\b");

scanf("%d",&x);

if(x<0||x>10)

{

printf("\t\t\t Error! Input again.");

}

}while(x<0||x>10);

return (x);

}

(1).制卡

相关文档
最新文档