




已阅读5页,还剩17页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
#include#include#include#include#include mmsystem.h/导入声音头文件 #pragma comment(lib,winmm.lib)/导入声音头文件库int n;int key;void landing();/开始界面void landing_page();/登陆界面void check_balances();/查询界面void withdraw_money();/取款界面void deposit_money();/存款界面void transfer_accounts();/转账界面void back_card();/退卡界面void Init();/图形驱动界面void Play_Mp3();/音频/定义用户信息的结构体,相当于银行注册用户struct Atmchar name10;char card_number7;char password6; char money10;struct Atm userinfo3 = /*用户*/段乐,/*账号*/1,2,3,4,5,6,7,/*密码*/1,2,3,4,5,6,/*卡上金额*/1,0,0,0,0,/*用户*/于忠新,/*账号*/1,2,3,4,5,6,8,/*密码*/6,5,4,3,2,1,/*卡上金额*/1,/*用户*/谭世豪,/*账号*/1,2,3,4,5,6,9,/*密码*/1,2,3,1,2,3,/*卡上金额*/9,9;void Init()/图形驱动 int gd=DETECT,gm;initgraph(&gd,&gm,);/*初始化图形*/cleardevice();/清除屏幕和图形缓冲区void Play_Mp3() MCI_OPEN_PARMS mciOpen; MCIERROR mciError; mciOpen.lpstrDeviceType = mpegvideo; mciOpen.lpstrElementName = C:UsersAdministratorDesktop项目答辩Sam Smith - Stay With Me.mp3; mciError = mciSendCommand(0,MCI_OPEN,MCI_OPEN_TYPE | MCI_OPEN_ELEMENT,(DWORD)&mciOpen); UINT DeviceID = mciOpen.wDeviceID ; MCI_PLAY_PARMS mciPlay; mciError = mciSendCommand(DeviceID,MCI_PLAY,0 ,(DWORD)&mciPlay); void main() Init();initgraph(700, 494);PIMAGE img1;img1 = newimage();getimage( img1, / 保存图像的 IMAGE 对象指针 1.jpg, / 图片文件名 0, / 设定图像缩放至的宽度(0 表示默认宽度,不缩放) 0 / 设定图像缩放至的高度(0 表示默认高度,不缩放));putimage(0,0,img1);Play_Mp3();PIMAGE img2;img2 = newimage();getimage( img2, / 保存图像的 IMAGE 对象指针 3.png, / 图片文件名 0, / 设定图像缩放至的宽度(0 表示默认宽度,不缩放) 0 / 设定图像缩放至的高度(0 表示默认高度,不缩放));putimage(10,175,img2);putimage(10,275,img2); /文字颜色 setcolor(BLACK);setbkmode(TRANSPARENT); /文字背景色(注意setbkcolor函数也会同时改变文字背景色) /设置字体,第一个参数是字体的高度(像素),第二个参数是字体的宽度,第二个参数如果为0,就使用默认比例值 /如果高度为12,即相当于小五号字,或者9磅字,实际的换算就自己完成吧 setfont(40, 0, 宋体); /写文字,注意:outtextxy不支持t n这类格式化用的特殊字符,这类字符会被忽略 /要使用特殊格式化字符请用outtextrect /设置文字背景填充方式为透明,默认为OPAQUE不透明 /setbkmode(TRANSPARENT); outtextxy(150, 30, 欢迎使用段氏银行ATM机);setfillcolor(getpixel(199,377);setfont(18, 0, 宋体);rectprintf(50, 190, 50, 20,1插卡);rectprintf(50, 290, 50, 20,0退卡);/鼠标输入交互:mouse_msg msg = 0;for ( ; is_run(); delay_fps(60) /获取鼠标消息,这个函数会等待,等待到有消息为止 /类似地,有和kbhit功能相近的函数MouseHit,用于检测有没有鼠标消息 while (mousemsg() msg = getmouse(); if(msg.x =20 & msg.x = 180 & msg.y =20 & msg.x = 280 & msg.y = 320)if(msg.flags = 1)back_card(); void landing()initgraph(700, 494);PIMAGE img1;img1 = newimage();getimage( img1, / 保存图像的 IMAGE 对象指针 1.jpg, / 图片文件名 0, / 设定图像缩放至的宽度(0 表示默认宽度,不缩放) 0 / 设定图像缩放至的高度(0 表示默认高度,不缩放));putimage(0,0,img1);char card_number19,password18;int a = 0;/使用EGE用户输入,数字必须转换为字符类型 inputbox_getline(银行卡认证, 请输入你的银行卡账号(账号为7位数), card_number1,9);int b;int c = 0;/进行账户验证for(int i = 0;i 3;i +,a +)b = 0;for(int j = 0;j 7;j +)if(card_number1j = userinfoa.card_numberj)b +;elsebreak;if(b = 7) & (card_number17 = 0)n = a;inputbox_getline(银行卡认证,请输入你的银行卡密码(密码为6位数),password1,8);break;for(int k = 0;k 6;k +)if(password1k = userinfoa.passwordk)c +;if(c = 6 & password16 = 0)landing_page();elsesetcolor(BLACK);setfont(40, 0, 宋体);outtextxy(150, 30, 对不起,输入错误);setfillcolor(getpixel(199,377);fillellipse(630, 300, 50, 20);setfont(18, 0, 宋体);rectprintf(610, 290, 50, 20,0退卡);key=getch();if(key = 0)back_card();void landing_page()initgraph(700, 494);PIMAGE img1;img1 = newimage();getimage( img1, / 保存图像的 IMAGE 对象指针 1.jpg, / 图片文件名 0, / 设定图像缩放至的宽度(0 表示默认宽度,不缩放) 0 / 设定图像缩放至的高度(0 表示默认高度,不缩放));putimage(0,0,img1);setcolor(BLACK);setfont(40, 0, 宋体);outtextxy(150, 10, 欢迎使用段氏银行ATM机);setfont(20, 0, 宋体);outtextxy(10, 100, 登陆成功,请选择操作);setfillcolor(getpixel(199,377);PIMAGE img2;img2 = newimage();getimage( img2, / 保存图像的 IMAGE 对象指针 3.png, / 图片文件名 0, / 设定图像缩放至的宽度(0 表示默认宽度,不缩放) 0 / 设定图像缩放至的高度(0 表示默认高度,不缩放));putimage(10,175,img2);putimage(10,275,img2);putimage(10,375,img2);putimage(570,175,img2);putimage(570,275,img2);putimage(570,375,img2);setfont(18, 0, 宋体);rectprintf(50, 190, 50, 20,0查询);rectprintf(50, 290, 50, 20,1取款);rectprintf(50, 390, 50, 20,2存款);rectprintf(610, 190, 50, 20,3转账);rectprintf(610, 290, 50, 20,4退卡);rectprintf(610, 390, 50, 20,5返回);key=getch();if(key = 0)check_balances();if(key = 1)withdraw_money();if(key = 2)deposit_money();if(key = 3)transfer_accounts();if(key = 4)back_card();if(key = 5)landing();void check_balances()initgraph(700, 494);PIMAGE img1;img1 = newimage();getimage( img1, / 保存图像的 IMAGE 对象指针 1.jpg, / 图片文件名 0, / 设定图像缩放至的宽度(0 表示默认宽度,不缩放) 0 / 设定图像缩放至的高度(0 表示默认高度,不缩放));putimage(0,0,img1);setfont(30, 0, 宋体);outtextxy(250, 150, 您卡上的余额为:);outtextxy(250, 200, userinfon.money);setfillcolor(getpixel(199,377);PIMAGE img2;img2 = newimage();getimage( img2, / 保存图像的 IMAGE 对象指针 3.png, / 图片文件名 0, / 设定图像缩放至的宽度(0 表示默认宽度,不缩放) 0 / 设定图像缩放至的高度(0 表示默认高度,不缩放));putimage(570,375,img2);setfont(18, 0, 宋体);rectprintf(610, 390, 50, 20,5返回);key=getch();if(key = 5)landing_page();void withdraw_money()int p2 = 0;int s = 0;int t = 0;int r = 0;initgraph(700, 494);PIMAGE img1;img1 = newimage();getimage( img1, / 保存图像的 IMAGE 对象指针 1.jpg, / 图片文件名 0, / 设定图像缩放至的宽度(0 表示默认宽度,不缩放) 0 / 设定图像缩放至的高度(0 表示默认高度,不缩放));putimage(0,0,img1);char w_money10;memset( w_money,0,sizeof( w_money);inputbox_getline(交易认证, 请输入你要取款的金额, w_money, 10);for(int i = 0;i = r)p2 = p2 - r;sprintf(userinfon.money, %d, p2);setfont(30, 0, 宋体);outtextxy(300, 200, 交易成功);elsesetfont(30, 0, 宋体);outtextxy(200, 200, 对不起,您卡上的余额不足);setfillcolor(getpixel(199,377);PIMAGE img2;img2 = newimage();getimage( img2, / 保存图像的 IMAGE 对象指针 3.png, / 图片文件名 0, / 设定图像缩放至的宽度(0 表示默认宽度,不缩放) 0 / 设定图像缩放至的高度(0 表示默认高度,不缩放));putimage(10,175,img2);putimage(570,375,img2);setfont(18, 0, 宋体);rectprintf(50, 190, 50, 20,0查询);rectprintf(610, 390, 50, 20,5返回);key=getch();if(key = 0)check_balances();if(key = 5)landing_page();void deposit_money()int p2 = 0;int s = 0;int t = 0;int r = 0;initgraph(700, 494);PIMAGE img1;img1 = newimage();getimage( img1, / 保存图像的 IMAGE 对象指针 1.jpg, / 图片文件名 0, / 设定图像缩放至的宽度(0 表示默认宽度,不缩放) 0 / 设定图像缩放至的高度(0 表示默认高度,不缩放));putimage(0,0,img1);char d_money10;memset( d_money,0,sizeof(d_money);inputbox_getline(交易认证, 请输入你要存款的金额, d_money, 10);for(int i = 0;i 10 ;i +)if(userinfon.moneyi != 0)s=userinfon.moneyi-0;p2=p2*10+s;if(d_moneyi != 0)t = d_moneyi -0;r = r*10+t;p2 = p2 + r;sprintf(userinfon.money, %d, p2);setfont(30, 0, 宋体);outtextxy(300, 200, 交易成功);setfillcolor(getpixel(199,377);PIMAGE img2;img2 = newimage();getimage( img2, / 保存图像的 IMAGE 对象指针 3.png, / 图片文件名 0, / 设定图像缩放至的宽度(0 表示默认宽度,不缩放) 0 / 设定图像缩放至的高度(0 表示默认高度,不缩放));putimage(10,175,img2);putimage(570,375,img2);setfont(18, 0, 宋体);rectprintf(50, 190, 50, 20,0查询);rectprintf(610, 390, 50, 20,5返回);key=getch();if(key = 0)check_balances();if(key = 5)landing_page();void transfer_accounts()initgraph(700, 494);PIMAGE img1;img1 = newimage();getimage( img1, / 保存图像的 IMAGE 对象指针 1.jpg, / 图片文件名 0, / 设定图像缩放至的宽度(0 表示默认宽度,不缩放) 0 / 设定图像缩放至的高度(0 表示默认高度,不缩放));putimage(0,0,img1);char card_number210;int c = 0;int k;int p2 = 0;int s = 0;int t = 0;int r = 0;int pc = 0;int q = 0;char t_money10;memset( t_money,0,sizeof(t_money);inputbox_getline(银行卡认证, 请输入你要转账的银行卡账号(账号为7位数), card_number2,10);for(int i = 0;i 3;i +,c +)k = 0;for(int i = 0;i 10;i +)if(card_number2i = userinfoc.card_numberi)k +;elsebreak;if(k = 7)inputbox_getline(交易认证,请输入你转入的金额,t_money,10);for(int i = 0;i 10 ;i +)if(userinfon.moneyi != 0)s=userinfon.moneyi-0;p2=p2*10+s;if(t_moneyi != 0)t = t_moneyi -0;r = r*10+t;if(p2 r)setfont(40, 0, 宋体);outtextxy(30, 30, 对不起,你的转账金额大于你的余额);setfillcolor(getpixel(199,377);PIMAGE img2;img2 = newimage();getimage(img2, / 保存图像的 IMAGE 对象指针3.png, / 图片文件名0, / 设定图像缩放至的宽度(0 表示默认宽度,不缩放)0 / 设定图像缩放至的高度(0 表示默认高度,不缩放));putimage(10,175,img2);putimage(570,375,img2);setfont(18, 0, 宋体);rectprintf(50, 190, 50, 20,0查询);rectprintf(610, 390, 50, 20,5返回);key=getch();if(key = 0)check_balances();if(key = 5)landing_page();elsesetfont(40, 0, 宋体
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年事业单位工勤技能-湖南-湖南图书资料员三级(高级工)历年参考题库含答案解析
- 2025年事业单位工勤技能-湖北-湖北林木种苗工四级(中级工)历年参考题库含答案解析
- 现场演艺市场复苏与科技展览演出创新研究报告
- 2025年交通设备制造业数字化转型中的网络安全挑战与对策报告
- 2025年事业单位工勤技能-浙江-浙江堤灌维护工一级(高级技师)历年参考题库含答案解析(5套)
- 2025年事业单位工勤技能-河南-河南计量检定工五级(初级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-河南-河南护理员一级(高级技师)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-河南-河南医技工一级(高级技师)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-河南-河南仓库管理员五级(初级工)历年参考题库含答案解析
- 2025年事业单位工勤技能-河北-河北机械热加工二级(技师)历年参考题库含答案解析(5套)
- 小儿上呼吸道感染
- 2025年CCAA国家注册审核员考试(产品认证基础)历年参考题库含答案详解(5卷)
- 2025年燃气电厂笔试题库及答案
- 2025年道路运输两类人员安全员考试考核试题库答案
- 2025年学法减分试题及答案
- 《智能建造概论》高职完整全套教学课件
- 2025年教育综合理论知识试题及答案
- 2025-2026小学学年度第一学期教学工作安排表:启智育心绘蓝图筑梦前行谱新篇
- GB/T 30807-2025建筑用绝热制品浸泡法测定长期吸水性
- 超声科进修学习汇报
- DB32T3795-2020企事业单位和工业园区突发环境事件应急预案编制导则
评论
0/150
提交评论