C语言实训ATM机存取款机管理系统.docx

上传人:b****2 文档编号:24558082 上传时间:2023-05-28 格式:DOCX 页数:16 大小:17.65KB
下载 相关 举报
C语言实训ATM机存取款机管理系统.docx_第1页
第1页 / 共16页
C语言实训ATM机存取款机管理系统.docx_第2页
第2页 / 共16页
C语言实训ATM机存取款机管理系统.docx_第3页
第3页 / 共16页
C语言实训ATM机存取款机管理系统.docx_第4页
第4页 / 共16页
C语言实训ATM机存取款机管理系统.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

C语言实训ATM机存取款机管理系统.docx

《C语言实训ATM机存取款机管理系统.docx》由会员分享,可在线阅读,更多相关《C语言实训ATM机存取款机管理系统.docx(16页珍藏版)》请在冰豆网上搜索。

C语言实训ATM机存取款机管理系统.docx

C语言实训ATM机存取款机管理系统

/***********************************************/

/*实训案例:

ATM存取款机管理系统*/

/***********************************************/

#include

#include

#include

#include

#include

#defineN3/*用户人数*/

structclients

{

longintcard_number,card_password;

charname[20];

floatmoney;

}yonghu[N];//结构体

FILE*fp;

inti;

voidfuction(float,int);//定义变量

main()//主函数

{

system("color8F");//界面颜色

intj,number,password,times1=3,times2=3,b;

charch;

fp=fopen("clients.txt","a+");//读写文本

if(getw(fp)==EOF)

{

/*欢迎界面进度条*/

inti=0,j=0,k=0;

for(i=0;i<80;i++)

{

printf(">");

for(j=0;j<3000;j++)

for(k=0;k<3000;k++);

}

printf("\n\n");

printf("\t\t\t欢迎使用中国银行\n");

printf("\n\n");

for(i=0;i<80;i++)

{

printf(">");

for(j=0;j<3000;j++)

for(k=0;k<3000;k++);

}

printf("\n");

printf("\n");

/*管理员操作新建用户*/

printf("\n\t\t管理员操作请按1,普通用户登入请按2继续:

");

scanf("%d",&b);

if(b==1)

{

printf("\n\t\t管理员操作中,添加新卡请继续(y/n):

");

ch=getch();

while(ch=='y'||ch=='Y')

{

printf("\n");

printf("\t\t\t银行卡号");

scanf("%d",&yonghu[i].card_number);

printf("\t\t\t密码");

scanf("%d",&yonghu[i].card_password);

printf("\t\t\t用户名");

scanf("%s",yonghu[i].name);

printf("\t\t\t卡内金额");

scanf("%f",&yonghu[i].money);

printf("\n");

fprintf(fp,"%d%d%s%f",yonghu[i].card_number,

yonghu[i].card_password,yonghu[i].name,

yonghu[i].money);

putc('\n',fp);

printf("\t\t你想继续添加新卡吗?

(y/n):

");

ch=getch();

}

}

}

fclose(fp);

/*登录系统,输入卡号和密码*/

system("cls");

printf("\n\t\t\t||====================================||");

printf("\n\t\t\t||------------------------------------||");

printf("\n\t\t\t||---欢迎使用中国银行自助ATM机---||");

printf("\n\t\t\t||------------------------------------||");

printf("\n\t\t\t||====================================||");

printf("\n\n");

printf("\t\t\t请输入您的银行卡号:

");

scanf("%d",&number);

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

");

scanf("%d",&password);

fp=fopen("clients.txt","r+");

for(i=0;i

{

fscanf(fp,"%d%d%s%f",&yonghu[i].card_number,

&yonghu[i].card_password,yonghu[i].name,

&yonghu[i].money);

}

fclose(fp);

/*判断卡号及密码是否匹配*/

for(i=0;i

{

if((number!

=yonghu[0].card_number)&&(number!

=yonghu[1].card_number)&&(number!

=yonghu[2].card_number))

{

if((times1-1)!

=0)

{

printf("\t\t\t该用户不存在!

您还有%d次尝试机会\n",times1-1);

printf("\t\t\t请重新输入您的银行卡号:

");

scanf("%d",&number);

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

");

scanf("%d",&password);

i=-1;

}

else

{

printf("您的磁卡已被冻结请到银行解除:

\n");

exit(0);

}

times1--;

}

else

{

if(number==yonghu[i].card_number)

{

if(password==yonghu[i].card_password)

{system("cls");

printf("\n\n");

printf("\t\t\t%s登陆成功!

请继续您的操作\n",yonghu[i].name);

j=i;

i=5;/*登陆成功,退出循环*/

}

else

{

if((times2-1)!

=0)

{

printf("密码输入错误!

您还有%d次尝试机会\n",times2-1);

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

\n");

scanf("%d",&password);

i=-1;

}

else

{

printf("尝试失败!

请按任意键退出:

\n");

exit(0);

}

times2--;

}

}

}

}

fuction(yonghu[j].money,j);

}

voidsave(void)//文件文本保存

{

inti;

fp=fopen("clients.txt","w");

for(i=0;i

{

fprintf(fp,"%d%d%s%f",yonghu[i].card_number,

yonghu[i].card_password,yonghu[i].name,

yonghu[i].money);

putc('\n',fp);

}

puts("保存成功!

");

fclose(fp);

}

voidfuction(floatm,intk)//功能界面

{

floatsaved_money,fetched_money,payment;

intbank_num,x,old_password,new_password,b,h;

while

(1)

{

system("cls");

printf("\n\t\t请选择操作:

");

printf("\n\t\t||===================================||");

printf("\n\t\t||1.查询2.取款||");

printf("\n\t\t||||");

printf("\n\t\t||3.存款4.修改密码||");

printf("\n\t\t||||");

printf("\n\t\t||5.转帐6.取卡||");

printf("\n\t\t||===================================||");

printf("\n\n");

/******功能实现*********/

scanf("%d",&x);

switch(x)

{

//查询余额

case1:

printf("卡内金额:

%f\n",m);

printf("返回请按1,取卡请按0\n");

scanf("%d",&b);

for(h=1;;h++)

{

if(b!

=1&&b!

=0)

{system("cls");

printf("输入有误请重新输入!

\n");

printf("返回请按1,取卡请按0\n");

scanf("%d",&b);

}

if(b==1)

{

break;

}

else

exit(0);

}

break;

//取款

case2:

printf("卡内金额:

%f\n",m);

printf("请输入取款金额:

\n");

scanf("%f",&fetched_money);

m-=fetched_money;

while((fetched_money<0)||(m<0))

{

system("cls");

printf("输入有误!

请重新输入!

\n");

m+=fetched_money;

printf("输入1重新输入,输入0返回!

\n");

scanf("%d",&h);

if(h==0)

break;

if(h==1)

{

printf("请输入取款金额:

\n");

scanf("%f",&fetched_money);

m-=fetched_money;

if(fetched_money>0)

break;

else

{

printf("输入1重新输入,输入0返回!

\n");

scanf("%d",&h);

}

}

}

while(fetched_money>0)

{

printf("操作成功!

卡内余额为:

%f\n",m);

yonghu[k].money=m;

save();

printf("请输入1继续,0取卡\n");

scanf("%d",&b);

if(b==0)

{

exit(0);

}

else

break;

}

break;

//存款

case3:

printf("卡内金额:

%f\n",m);

printf("请输入存款金额:

\n");

scanf("%f",&saved_money);

while(saved_money<0)

{system("cls");

printf("输入有误!

!

\n");

printf("重新输入请按1,返回请按0\n");

scanf("%d",&h);

getchar();

while(h==1)

{

printf("请输入存款金额:

\n");

scanf("%f",&saved_money);

if(saved_money>0)

{

break;

}

else

{

printf("输入有误!

!

\n");

printf("重新输入请按1,返回请按0\n");

scanf("%d",&h);

if(h==1)

{

break;

}

}

}

if(h==0)

break;

}

while(saved_money>0)

{

m+=saved_money;

printf("操作成功!

卡内余额为:

%f\n",m);

yonghu[k].money=m;

save();

printf("继续请按1,取卡请按0\n");

scanf("%d",&b);

if(b==0)

{

exit(0);

break;

}

else

break;

}

break;

//改密码

case4:

while

(1)

{

printf("继续请按1,返回请按0\n");

scanf("%d",&h);

if(h==1)

{

printf("请输入原密码:

\n");

scanf("%d",&old_password);

if(old_password==yonghu[k].card_password)

{

printf("请输入新密码:

\n");

scanf("%d",&new_password);

printf("密码修改成功!

\n");

yonghu[k].card_password=new_password;

fp=fopen("clients.txt","w+");

for(i=0;i

{

fprintf(fp,"%d%d%s%f",yonghu[i].card_number,

yonghu[i].card_password,yonghu[i].name,yonghu[i].money);

putc('\n',fp);

}

fclose(fp);

printf("请输入1继续,0取卡");

scanf("%d",&b);

if(b==0)

{

save();

exit(0);

}

else

break;

}

else

printf("密码输入错误!

\n");

}

elseif(h==0)

{

break;

}

}

break;

//转帐

case5:

printf("卡内金额:

%f\n",m);

printf("请输入银行帐号:

\n");

scanf("%d",&bank_num);

printf("继续请输入1,返回请输入0的数;\n");

scanf("%d",&h);

if(h==1)

{

printf("请输入转帐金额:

");

scanf("%f",&payment);

m-=payment;

while((payment<0)||(m<0))

{

printf("输入有误!

请重新输入!

\n");

m+=payment;

printf("请输入转帐金额:

\n");

scanf("%f",&payment);

m-=payment;

}

yonghu[k].money=m;

save();

printf("操作成功!

卡内余额为:

%f\n",m);

printf("继续请按1,取卡请按0\n");

scanf("%d",&b);

getchar();

while(b==1)

{

break;

}

while(b==0)

{

exit(0);

}

yonghu[k].money=m;

fp=fopen("clients.txt","w+");

for(i=0;i

{

fprintf(fp,"%d%d%s%f",yonghu[i].card_number,yonghu[i].card_password,yonghu[i].name,yonghu[i].money);

putc('\n',fp);

}

fclose(fp);

}

break;

//取卡

case6:

system("color2B");

printf("请收好您的磁卡!

");exit(0);break;

default:

printf("输入有误!

请重新输入!

\n");

break;

}

}

}

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

当前位置:首页 > 解决方案 > 解决方案

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

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