C语言课程设计 ATM机模拟操作附源码.docx

上传人:b****6 文档编号:5172001 上传时间:2022-12-13 格式:DOCX 页数:12 大小:101.12KB
下载 相关 举报
C语言课程设计 ATM机模拟操作附源码.docx_第1页
第1页 / 共12页
C语言课程设计 ATM机模拟操作附源码.docx_第2页
第2页 / 共12页
C语言课程设计 ATM机模拟操作附源码.docx_第3页
第3页 / 共12页
C语言课程设计 ATM机模拟操作附源码.docx_第4页
第4页 / 共12页
C语言课程设计 ATM机模拟操作附源码.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

C语言课程设计 ATM机模拟操作附源码.docx

《C语言课程设计 ATM机模拟操作附源码.docx》由会员分享,可在线阅读,更多相关《C语言课程设计 ATM机模拟操作附源码.docx(12页珍藏版)》请在冰豆网上搜索。

C语言课程设计 ATM机模拟操作附源码.docx

C语言课程设计ATM机模拟操作附源码

C语言-ATM机模拟操作

程序实现功能点:

a.查询:

查询帐户的存款余额。

按任意键返回主菜单;

b.取款:

输入100、500、1000、2000、5000、其它金额为取款金额,取款金额不超过帐户余额,操作后帐户余额应相应减少,之后可返回主菜单;

c.存款:

输入100、500、1000、2000、5000、其它金额为存款金额,存款金额不超过20000元,操作后帐户余额应相应增加。

之后可返回主菜单;

d.转帐:

输入一个帐户号,程序判断与文件信息是否相符,储户确认无误后,再输入100、500、1000、2000、5000、其它金额为转帐金额,转帐金额不得超过帐户余额,操作后帐户余额应相应减少。

之后可返回主菜单;

e.修改密码:

连续输入两次新密码(两次输入结果完全相同)后,新密码取代旧密码,并存放到帐户信息文件中。

之后可返回主菜单;

f.退出:

退出系统;

g.帮助:

增加趣味性;

h.存款时,可正可负,正表示存款,负表示取款;

i.帐户信息存放在文件,储户存取款记录保存在中;(在目录下创建这两个文件)

采用模块化程序设计方法来实现,即j.main()显示主菜单、调用相关函数实现相应功能,起主控作用;

k.储户一天内输错密码的次数不能超过3次,否则无法进入系统;

有效避免输入存款金额、取款金额为负数等异常情况的出现。

l.

存款转出转入登录时账号密码的核对验证;较为突出的功能是注册、金额的核对。

是否超过余额,是否不符合格式,是否为冲突操作。

;100字)50

(2)程序运行截图及说明(每图限到menu1可选择登录、注册功能。

进入程序,

选择登录,输入账号密码,通过输入内容与文件的匹配,判断是

否成功登录。

若登录失败,则重新选择。

选择注册,输入账号密码,写入文件中。

有五大功能选择,输入对应的序列号进入。

menu2,进入

余额查询功能输出账号所对应的余额。

取款功能,需要安装要求取出格式化的金额。

存款功能,选择金额,若超过存款,自动报错。

存储成功后,在

中看到对应数目的增加。

屏幕上显示余额并可在txt

修改密码功能,输入当前密码,输入新密码,并进行确认。

即修改成功。

转账功能,输入对方卡号,核程序核对卡号是否存在,选择金额

转账,对应存款的减少会反映在屏幕的余额上。

退出功能,任意键退出程序。

帮助功能,介绍了本程序的相关信息。

;200(3)采用的主要技术(限150到字)运用文件操作相关函数如使用结构体对文本信息进行操作、答:

主要采用模块化管理代码。

fwrite()、fread()、fgets()、fputs()、fclose()......fopen()、fgetc()、fputc()、并使用指针操作数值。

附:

程序代码#include<>#include<>#include<>#include<>#include<>

#defineN3

voidenterzhanghao();um))

{

N;k++)for(k=1;k<

{

(user==(ATM[k].num))if

inputmima();

}

捜獬system();printf(\\t\t\t\t*账户不存在,请从新输入);尪瑜屜屴瑜屜屴瑜屜屮enterzhanghao();}

else

inputmima();}flesh()void{

捜獬);system(

printf(\\t\t\t\t请输入账号:

);,&ATM[k].num);scanf(╜屦);\\t\t\t\t请输入密码:

printf(,&ATM[k].password);scanf(╜屦write();

}

assword){

temp--;

);system(捜獬

);尪瑜屜屴瑜屜屴湜密码错误,请重新输入printf(\\t\t\t\t*

?

printf(\\t\t\t\t*您还有);printf(╜層,temp);

尪湜);次机会printf(,&code);╜層scanf(if(temp==1)

{

system(捜獬);printf(\\t\t\t\t*您已经);尪瑜屜屴瑜屜屴湜次输入密码错误3

);尪瑜屜屴瑜屜屴湜系统将退出操作printf(\\t\t\t\t*

daly();enterzhanghao();

}

}menu();

}ccounte&&i!

=0){

ATM[k].accounte=ATM[k].accounte-i;

取款成功!

你的余额为:

);\\t\t\t\tprintf(,ATM[k].accounte);printf(╜屦i=i*(-1);

write2(i);

}

else);余额不足!

\\t\t\t\tprintf(

write();},ATM[k].num,ATM[k].accounte);晬屜屮湜屜屮湜屜屮

}ccounte=i+ATM[k].accounte;,ATM[k].accounte);printf(╜屦write();

write2(i);

}assword){);请输入新的密码:

loop:

printf(\\t\t\t\tscanf(,&password2);╜層

);printf(屜湜请再次输入新的密码:

);printf(\\t\t\t\t

&password3);scanf(╜層

(password2==password3)if

{ATM[k].password=password2;);屜屮密码修改成功!

\\t\t\t\t\nprintf(

}else{密码不一致!

屜屮);\\t\t\t\t\nprintf(

printf(屜屮!

请重新输入!

\\t\t\t\t);loop;goto}}else{printf(屜屮输入错误\\t\t\t\t);

change();

}write();

}um));╜層fscanf(fp,,&(ATM[i].password));

&(ATM[i].accounte));╜晬屜屮fscanf(fp,

}fclose(fp);}um);,ATM[i].password);╜?

層fprintf(fp,

fprintf(fp,╜晬屜屮,ATM[i].accounte);

}

fclose(fp);

});回菜单);请输要对方的账号:

\

\n\n\n\n\n\t\t\tprintf(

回um);,other_num[10]);scanf(╜層um)um)

\t\t\t9.菜单确认);scanf(╜層);,&c);回菜单请输入转账金额(整百数)printf(\

\n\n\n\n\n\t\t:

);

&q);getchar();scanf(╜層ccounte)ccounte-=tran;(q)ifATM[k].accounte+=tran;

);继续转账回菜单menu();\t\t\t9.c=_getch();

输入//'9'if(c==)就行转账9{

?

卌system();

}else

0为//c'0'(c==if)返回菜单{

?

卌system();menu();}

else

{

输入错误,请重新输入!

printf();屜屮

system();?

}

}

else

{

system(?

卌);

对不起,一次最多能printf(\

\n\n\n\n\n\t\t

);元,请重新输入!

3000转账);屜屮\

\n\n\n\nprintf(按任意键返回!

_getch();

);?

卌system(

}

}

else

{

?

卌system();

请重新输您的余额不足,\

\n\n\n\n\n\t\t\tprintf(

入!

);\

\n\n\n\nprintf(按任意键返回!

屜屮);

_getch();

system(?

卌);

}

}

else

{

);system(?

请输入正确的金额!

请重新输\

\n\n\n\n\n\t\t\tprintf(

);入!

);\

\n\n\n\n按任意键返回!

屜屮printf(

_getch();

);system(?

}

}

else

{

system(?

卌);

menu();}

(1);}while

}

else

'0')if(c==

menu();

}

}

}{);system(?

卌printf(\

\n\n\n\n\n\t\t\t用户不存在!

请重新输入!

);printf(\

\n\n\n\n按任意键返回!

屜屮);_getch();

?

卌);system(递归调用//tran_account();

}}

}帮助//help()void

{system(?

卌);printf(屜瑜屜屴瑜屜屴瑜?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

屜屮);

?

屜屮);printf(\\t\t\t\t->码字不易,我可以在你心里跑一圈吗);1、可以?

屜屮printf(\\t\t\t\t->

?

屜屮);2printf(\\t\t\t\t->、当然可以

);printf(屜瑜屜屴瑜屜屴瑜?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

屜屮?

屜屮);你要选哪个\\t\t\t\t->printf(intk;╜層,&k);scanf(switch(k){);_getch();menu();1:

{printf(case蟹蟹你繾?

屜屮break};;等下我,第十圈了!

屜渳);_getch();menu();case2:

{printf(

;}break

}

}

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

当前位置:首页 > 高等教育 > 艺术

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

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