c语言编写atm如何修改密码

c语言编写atm如何修改密码,第1张

步骤:

1. 使用C语言编写atm程序,实现密码修改的功能。

2. 需要设置一个全局变量来存储当前用户的密码信息。

3. 在主函数中枯仿,定义一个函数,用于输入原密码和修改后的新密码。

4. 在输入新密码之前,需要验证输入的原密码是否正确。

5. 如果原返败弯密码输入正确漏闷,则继续输入新密码,并将新密码记录到全局变量中。

6. 如果原密码输入错误,则提示用户重新输入。

7. 将修改后的新密码记录到文件中,以备下次使用。

#include<stdio.h>

int chaxun(int a3)

{

int b

b=a3

printf("你的余额为:%d\n",b)

}

int qukuan(int a3)

{

int a,b

printf("请输入您要提取的现金:\n")

scanf("%d",&a)

b=a3-a

if(b<0)

printf("对不起 ,你的余额不足\n")

else

{

printf("请收好您的%d元现金\n",a)

a3=a3-a

}

return (a3)

}

int gaini(int a2)

{

int a,b,c=1,d,e=1

while(e)

{

printf("请输入你的旧密码:\n")

scanf("%d",&d)

if(d==a2)

e=0

else

{

e=1

printf("你输入的密码错误,请重新输入:\n")

}

}

while(c)

{

printf("请输入您的六位数新密码\n")

scanf("晌滑旦%d",&a2)

printf("请确认您的六位数新密码\n")

scanf("%d",&b)

if(a2==b)

{

if(b>100000&&b<999999&&b/(b/100000)!=111111)

{

c=0

printf("密码修改成功\n")

}

else

{

printf("您输入的密码不符合要求,请从新输入\n")

c=1

}

}

else

{

c=1

printf("您两次输入的密码不一致,请重新输入:\n")

}

}

return a2

}

int quka()

{

printf("\n 梦若保保提醒您\n")

printf("请收好您的卡片,谢谢,再见\n\n")

}

int cunkuan(int a3)

{

int i,j,k

printf("请输入你要存的金额\n")

scanf("%d",&k)

if(k<0)

{

printf("对不起,没有负存款\让轿n")

}

else

{

printf("\n您好,您已经存进去了%d元\n",k)

a3=a3+k

}

return a3

}

main()

{

int i,j,b=1,c,k,l,m,n

int a1=123456,a2=123456,a3=1000

printf("欢迎使用自动柜员机:\n\n")

while(b==1)

{

printf("请输入您的账号:\n")

scanf("%d",&k)

printf("请输入您的密码:\n")

scanf("%d",&l)

if(k==a1&&l==a2)

{

b=0

printf("您的账户余额为:%d\n",a3)

}

else

{

b=1

printf("对不起,您输入的账号或者密码有误,请重新输入:\n")

}

}

do

{

printf("\n请选择您要的服务项目:\n")

printf("1.查询余额\n")

printf("2.取款\n")

printf("宴扰3.修改密码\n")

printf("4.取卡\n")

printf("5.存款\n")

scanf("%d",&c)

switch(c)

{

case 1:

chaxun(a3)

break

case 2:

a3=qukuan(a3)

break

case 3:

a2=gaini(a2)

break

case 4:

quka()

break

case 5:

a3=cunkuan(a3)

break

}

}while(c!=4)

}

#include<stdio.h>

#include<stdlib.h>

#include<string.h>

#include<math.h>

#include<conio.h>

void

sys(const

char

*ex)

{

printf(ex)

fflush(stdin)

getch()

}

struct

atm

{

float

money

char

card[20]

char

pass[20]

}

struct

atm

*creat()

{

struct

atm

*p

p=(struct

atm

*)malloc(sizeof(struct

atm))

printf("请输入密码:")

gets(p->pass)getchar()

printf("皮世请输入卡号:")

gets(p->card)getchar()

printf("卡号为=%s,密码为=%s\n",p->card,p->pass)

printf("请输入预存款金额:")

scanf("%f",&p->money)

return

p

}

struct

atm

*qukuan(struct

atm

*p)

{

float

money

printf("请前握凳输入取款金额:")

scanf("%f",&money)

if(money>p->money){printf("余额不足!\n")return

p}

p->money-=money

return

p

}

void

print(struct

atm

*p)

{

printf("当前余额为%.2f,可取款金额为%d\n",p->money,floor(p->money)/100)

}

int

yanzheng(struct

atm

*p)

{

char

pass[20]

printf("你好,请输入密码:")

gets(pass)

if(strcmp(pass,p->pass)==0)

return

1

return

0

}

void

main()

{

struct

atm

*p

int

t=0

p=creat()

do

t++

while(!yanzheng(p)&&t<3)

if(t==3){printf("密码连续三次输入错误,退出程序!\n")return

1}

while(1)

{

system("cls")

printf("****欢迎您使用ATM取款机!****\n")

printf("1:\t取款\n")

printf("2:\t查看余慧旅额\n")

printf("0:\t退出\n")

printf("请选择:")

scanf("%d",&t)

fflush(stdin)

switch(t)

{

case

1:qukuan(p)break

case

2:print(p)break

}

if(!t)

{

sys("请按任意键退出...")

break

}

sys("请按任意键返回...")

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12524839.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2025-08-26
下一篇2025-08-26

发表评论

登录后才能评论

评论列表(0条)

    保存