C语言如何实现ATM机存取款系统文档格式.docx

上传人:b****1 文档编号:13474562 上传时间:2022-10-11 格式:DOCX 页数:26 大小:18.94KB
下载 相关 举报
C语言如何实现ATM机存取款系统文档格式.docx_第1页
第1页 / 共26页
C语言如何实现ATM机存取款系统文档格式.docx_第2页
第2页 / 共26页
C语言如何实现ATM机存取款系统文档格式.docx_第3页
第3页 / 共26页
C语言如何实现ATM机存取款系统文档格式.docx_第4页
第4页 / 共26页
C语言如何实现ATM机存取款系统文档格式.docx_第5页
第5页 / 共26页
点击查看更多>>
下载资源
资源描述

C语言如何实现ATM机存取款系统文档格式.docx

《C语言如何实现ATM机存取款系统文档格式.docx》由会员分享,可在线阅读,更多相关《C语言如何实现ATM机存取款系统文档格式.docx(26页珍藏版)》请在冰豆网上搜索。

C语言如何实现ATM机存取款系统文档格式.docx

  voidkaihu(structper*head);

  voiddenglu(structper*head);

  voidcaidan(structper*head);

  voidqukuan(structper*head);

  voidxgmm(structper*head);

  voidcunkuan(structper*head);

  voidzhuanzhang(structper*head);

  voidchuangjian(structperson**Phead);

  voidshuchu(structperson*Phead);

  voidshanchu(structperson**Phead);

  voidzengjia(structperson**Phead);

  voidchaxun1(structperson*Phead);

  voidchaxun2(structperson*Phead);

  voidchaxun3(structperson*Phead);

  voidtuichu();

  voidmenu();

  /*主函数*/

  //////////////////////////////////////////////////

  voidmain()

  charx;

  charchoose;

//choose为定义输入选择的变量

  intflag=1;

  structperson*Phead=NULL;

//Phead为定义二层头指针

  structper*head=NULL;

//head为定义一层头指针

  printf("

*****************************"

);

**欢迎使用ATM自动取款机系统**"

――――――――――――――"

|1开户|"

|2登陆|"

|3前台客户信息查询中心|"

|4请选择您的需求|"

  scanf("

%s"

&

x);

  system("

cls"

  switch(x)

  case'

1'

:

system("

  kaihu(head);

//调用开户函数

  break;

2'

  denglu(head);

//调用登陆函数

3'

  menu();

//调用后台菜单函数

  }

  while(flag)

  choose=get);

  switch(choose)

chuangjian(&

Phead);

  shuchu(Phead);

//调用后台输出函数

pause"

chaxun1(Phead);

//调用后台卡号查询函数

chaxun2(Phead);

//调用后台姓名查询函数

4'

  chaxun3(Phead);

//调用后台余额查询函数

5'

shanchu(&

//调用后台删除用户函数

6'

  zengjia(&

//调用后台增加用户函数

7'

shuchu(Phead);

//调用后台输出函数函数

8'

0'

flag=0;

Theend."

  /*开户函数*/

  ////////////////////////////////////////////////////////

  voidkaihu(structper*head)

  head=NULL;

  FILE*fp;

//定义文件指针

  structper*p1=NULL,*p2=NULL;

//p1,p2为定义链表指针

  p1=(structper*)malloc(sizeof(structper));

//开辟内存单元

请输入您的姓名:

"

//请数据输入链表中

p1->

name);

请设置您的卡号:

ID);

请设置您银行卡密码:

mima);

  p1->

money=0;

next=NULL;

您的个人信息为"

姓名:

%s卡号:

%s余额:

%4d"

name,p1->

ID,p1->

money);

  if(NULL==head)//为新用户开辟内存单元

  head=(structper*)malloc(sizeof(structper));

  head->

next=p1;

//进行头插法,将其作为第一个节点

  else//为新增客户开辟内存单元

  for(p2=head;

p2->

next!

=NULL;

p2=p2->

next);

//进行尾插

  p2->

  if((fp=fopen("

save.txt"

"

ab+"

))==NULL)//打开文件

cannotpoenfile"

  return;

  if(fwrite(p1,sizeof(structper),1,fp)!

=1)//将链表信息写入文件中

filewriteerror"

  fclose(fp);

恭喜您开户成功,请登录"

  //登陆函数

  /////////////////////////////////////////////////////

  voiddenglu(structper*head)

  chard[20];

  charmima[20];

  inti,j;

  structper*p,*q=NULL;

rb+"

))==NULL)//打开一个二进制文件,为读方式

不能打开文件"

//如不能打开,则结束程序

  p=(structper*)malloc(sizeof(structper));

//申请空间

  head=p;

  while(!

feof(fp))//循环读数据直到文件尾结束

  if(1!

=fread(p,sizeof(structper),1,fp))

//如果没读到数据,跳出循环

  p->

next=(structper*)malloc(sizeof(structper));

//为下一个结点申请空间

  q=p;

//保存当前节点的指针,作为下一结点的前驱

  p=p->

next;

//指针后移,新读入数据链到当前表尾

  q->

//最后一个结点的后继指针为空

**********************"

***欢迎来都建设银行***"

  for(j=1;

j<

4;

j++)//限制卡号输入的次数的循环

请输入您的卡号"

d);

  for(q=head;

q!

q=q->

next)//遍历链表

  if(strcmp(q->

ID,d)!

=0)//核对账号

  continue;

//跳出循环

  else

  for(i=1;

i<

i++)//限制密码输入的次数的循环

请输入您的密码"

mima);

mima,mima)!

=0)//核对密码

密码不正确。

请重新输入密码"

  continu

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 学科竞赛

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1