银行卡管理系统实验报告_第1页
银行卡管理系统实验报告_第2页
银行卡管理系统实验报告_第3页
银行卡管理系统实验报告_第4页
银行卡管理系统实验报告_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

更多企业学院:更多企业学院:./Shop/./Shop/ 中小企业管理全能版183 套讲座+89700 份资料 ./Shop/40.shtml 总经理、高层管理49 套讲座+16388 份资料 ./Shop/38.shtml 中层管理学院46 套讲座+6020 份资料 ./Shop/39.shtml 国学智慧、易经46 套讲座 ./Shop/41.shtml 人力资源学院56 套讲座+27123 份资料 ./Shop/44.shtml 各阶段员工培训学院77 套讲座+ 324 份资料 ./Shop/49.shtml 员工管理企业学院67 套讲座+ 8720 份资料 ./Shop/42.shtml 工厂生产管理学院52 套讲座+ 13920 份资料 ./Shop/43.shtml 财务管理学院53 套讲座+ 17945 份资料 ./Shop/45.shtml 销售经理学院56 套讲座+ 14350 份资料 ./Shop/46.shtml 销售人员培训学院72 套讲座+ 4879 份资料 ./Shop/47.shtml 目 录 一,实验概述- 2 - (一)实验目的及要求 - 2 - (二)实验原理.- 2 - (三)实验环境.- 2 - 二,实验内容- 2 - (一)实验方案设计- 2 - 方案介绍.- 2 - 模块说明.- 3 - (二)实验过程.- 4 - 对代码的详细介绍:- 4 - 部分模块运行结果:.- 11 - (三)结论- 14 - 一,实验概述一,实验概述 (一)实验目的及要求(一)实验目的及要求 应用所学的 C 语言编程知识设计银行卡管理系统,应 用到函数、数组、指针、结构等内容,利用模块化程序设 计方法实现数据的创建、查找、排序、删除等功能。 (二)实验原理(二)实验原理 结构体,函数嵌套调用,数组,指针,选择结构。 (三)实验环境(三)实验环境 Visual C+ 6.0 二,实验内容二,实验内容 (一)实验方案设计(一)实验方案设计 方案介绍方案介绍 作为一名大学生,生活中对于银行卡的使用很常见,根 据日常经验,我设计了如下的银行卡管理系统,包括: “卡管理” 、 “存取管理” 、 “查询” 、 “管理员” “退出系统” 等五大块功能,具体如下: Bank Card(银行卡系统) 1. Card Management Module(卡管理) a.Application for a card(卡申请) b.Entry(登录) c.Change Code(修改密码) 2. Saving and Drawing Management Module(存 取管理) a.Saving(存款) b.Drawing(取款) c.Transfer(转账) 3. Inquire Module(查询) Balance Inquire(余额查询) 4. Manager Log in(管理员登陆) 5. Exit(退出系统) 模块说明模块说明 系统初始化如下,共储存了 4 张卡的信息。包括账号、余额 和密码。 struct card char num80; /*银行卡账号*/ float balance; /*银行卡余额*/ char cipher80; /*银行卡密码*/ ; 银行卡号 余额 密码 0 abc 5000 def 4000 ghi 2000 jkl 为完成各项功能设计的函数如下: void read(struct card inf,int m); 执行“读卡“功能的函数 void CMM(); 执行“卡管理“功能的函数 void SDMM(); 执行“存取管理“功能的函数 void IM(); 执行“查询“功能的函数 void change(); 执行“修改密码“功能的函数 void Manager(); 执行系统管理员职能函数 void bubble(struct card *p); 冒泡排序法 void menu(); 菜单函数 void exit(); 退出系统函数 (二)实验过程(二)实验过程 对代码的详细介绍:对代码的详细介绍: #include #include #include“malloc.h“ int j; struct card char num80; /*银银行卡行卡账账号号*/ float balance; /*银银行卡余行卡余额额*/ char cipher80; /*银银行卡密行卡密码码*/ ; void read(struct card inf,int m); /*声明声明执执行行“读读卡卡“功能的函数功能的函数*/ void CMM(); /*声明声明执执行行“卡管理卡管理“功能的函数功能的函数*/ void SDMM(); /*声明声明执执行行“存取管理存取管理“功能的函数功能的函数*/ void IM(); /*声明声明执执行行“查询查询“功能的函数功能的函数*/ void change(); /*声明声明“修改密修改密码码“函数函数*/ void Manager(); /*声明系声明系统统管理管理员职员职能函数能函数*/ void bubble(struct card *p); /*声明冒泡排序法声明冒泡排序法*/ void menu(); /*声明菜声明菜单单函数函数*/ void exit(); /退出系退出系统统函数函数 struct card *p ; card inf10= “,0,“abc“, /*“银银行卡信息行卡信息“结结构构变变量的初始化量的初始化*/ “,5000,“def“, “,4000,“ghi“, “,2000,“jkl“; int main() menu(); return 0; void menu() /定定义义菜菜单单函数函数 int choice1; printf(“*n“); printf(“-欢迎使用中国银行长城借记卡-n“); printf(“*n“); printf(“ Bank Card(银行卡系统) n“); printf(“ 1. Card Management Module(卡管理) n“); printf(“ a.Application for a card(卡申请) n“); printf(“ b.Entry(登录) n“); printf(“ c.Change Code(修改密码) n“); printf(“ 2. Saving and Drawing Management Module(存取管理)n“); printf(“ a.Saving(存款) n“); printf(“ b.Drawing(取款) n“); printf(“ c.Transfer(转账) n“); printf(“ 3. Inquire Module(查询) n“); printf(“ Balance Inquire(余额查询) n“); printf(“ 4.Manager Log in(管理员登陆) n“); printf(“ 5.Exit(退出系统) n“); printf(“*n“); printf(“n“); printf(“请选择您所需要的服务:n“); scanf(“%d“, switch(choice1) 菜菜单单函数中的函数中的 switch 语语句句实现对实现对任任务务的的选择选择 case 1:CMM();break; case 2:SDMM();break; case 3:IM();break; case 4:Manager();break; case 5: printf(“您已经成功退出系统!n“);break; void bubble(struct card *p) /定定义义“冒泡法冒泡法”排序函数排序函数 int i,j; card t; for(i=0;ibalance); void exit() /定定义义退出系退出系统统函数函数 int k; printf(“ n“); printf(“_n“); printf(“ n“); printf(“请选择:n“); printf(“1.返回菜单n“); printf(“2.退出系统n“); scanf(“%d“, if(k=1) menu(); else printf(“您已经成功退出系统。n“); void read(struct card inf,int m) /*定定义执义执行行“读读卡卡“功能的函数功能的函数*/ char number80,code80; int i,k; /*定定义义 i 是循是循环变环变量量,k 是密是密码输码输入入错误错误后作出的后作出的选择选择 */ printf(“请登录您的个人中国银行长城借记卡系统n“); printf(“-n“); printf(“请输入您的银行卡号:n“); scanf(“%s“, for(i=0;i4;i+) if(strcmp(infi.num,number)=0) printf(“请输入您的银行卡密码: #温馨提示:请注意保护好您的个人信 息。#n“); do scanf(“%s“, if(strcmp(infi.cipher,code)=0) j=i; printf(“您已经成功登陆,欢迎使用中国银行为您提供的各项服务.n“); else printf(“您输入的密码有误,请重新输入或退出.n“); printf(“1.重输密码n“); printf(“2.退出系统n“); scanf(“%d“, if(k=1) continue; else printf(“您已经成功退出系统。n“);break; while(strcmp(infi.cipher,code)!=0); void change() /定定义执义执行行“修改密修改密码码”功能的函数功能的函数 int m = 10; read(inf,m); printf(“请输入您的新密码:n“); getchar(); gets(infj.cipher); printf(“修改密码成功!n“); exit(); void CMM() /*定定义执义执行行“卡管理卡管理“功能的函数功能的函数*/ char choice2; char code110,code210; printf(“ Card Management Module(卡管理): n“); printf(“ a.Application for a card(卡申请) n“); printf(“ b.Entry(登录) n“); printf(“ c.Change Code(修改密码) n“); getchar(); printf(“请选择您所需要的服务:n“); choice2=getchar();getchar(); switch(choice2) case a: 申申请请卡号卡号 printf(“系统为您生成的银行卡账号是.n“); printf(“您目前的账户余额为 0.n“); printf(“_n “); do printf(“请设置您的密码并妥善保管:n“); scanf(“%s“, printf(“请再次确认您的密码.n“); scanf(“%s“, if(strcmp(code1,code2)=0) 使用字符串的比使用字符串的比较较函数函数 printf(“恭喜您已经成功申请中国银行长城借记卡,感谢你的支持!n“); break; else printf(“密码设置失败!请重新设置!n“); printf(“*n“); while(strcmp(code1,code2); break; case b:read(inf,10);break; 调调用用“登登录录”函数函数 case c:change();break; 调调用用“修改密修改密码码”函数函数 exit(); void SDMM() /*定定义执义执行行“存取管理存取管理“功能的函数功能的函数*/ char choice2; float bank=10000; /*设设置用于置用于转账转账的的银银行行账户账户*/ float *p1= float money; read(inf,10); printf(“ 2. Saving and Drawing Management Module(存取管理)n“); printf(“ a.Saving(存款) n“); printf(“ b.Drawing(取款) n“); printf(“ c.Transfer(转账) n“); getchar(); printf(“请选择您所需要的服务:n“); choice2=getchar(); switch(choice2) switch 语语句句实现选择实现选择功能功能 case a: 使用指使用指针实现对针实现对金金额额的增减的增减变变化化 printf(“请输入您的存款金额:n“); 存款存款 scanf(“%f“, infj.balance+=money; printf(“您已经成功存款。“); break; case b: printf(“请输入您的取款金额:n“); 取款取款 scanf(“%f“, if(money=infj.balance) infj.balance-=money; printf(“您已经成功取款。n“); else printf(“您的账户余额不足!n“); break; case c: printf(“请输入您的转账金额:n“); 转账转账 scanf(“%f“, infj.balance+=money; *p1-=money; break; printf(“感谢您对中国银行的支持!n“); exit(); void IM() /*定定义执义执行行“查询查询“功能的函数功能的函数*/ read(inf,10); printf(“你的账户余额是:n“); 查询查询余余额额 printf(“%10.2f“,infj.balance); printf(“ n“); printf(“感谢您对中国银行的支持!n“); exit(); void Manager() /定定义执义执行行“管理管理员员”功能的函数功能的函数 char managercode010=“manager“; char managercode120; int m,k; do printf(“请输入密码:n“); scanf(“%s“, if(strcmp(managercode0,managercode1)=0) printf(“*n“); printf(“-系统管理员,欢迎进入!-n“); printf(“*n“); printf(“您可以执行的任务: n“); printf(“1.对目前各账户进行余额数目从小到大的排序; n“); printf(“2.清除余额为零的账户. n“); printf(“请选择您要执行的任务:n“); scanf(“%d“, if(m=1) bubble(inf); “冒泡排序法冒泡排序法”实现对账户实现对账户余余额额排序排序 else int num=4; 查询查询余余额为额为零的零的账户账户并清除并清除 for(i

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论