ATM取款機(jī)模擬系統(tǒng)程序設(shè)計(jì)報(bào)告完成版_第1頁
ATM取款機(jī)模擬系統(tǒng)程序設(shè)計(jì)報(bào)告完成版_第2頁
ATM取款機(jī)模擬系統(tǒng)程序設(shè)計(jì)報(bào)告完成版_第3頁
ATM取款機(jī)模擬系統(tǒng)程序設(shè)計(jì)報(bào)告完成版_第4頁
ATM取款機(jī)模擬系統(tǒng)程序設(shè)計(jì)報(bào)告完成版_第5頁
已閱讀5頁,還剩58頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、目錄2頁第2頁第2頁第3頁第 13 頁第 32 頁第 37 頁第 39 頁三、編程題部分(銀行ATM模擬存取系統(tǒng))1、設(shè)計(jì)內(nèi)容2、設(shè)計(jì)(1) 數(shù)據(jù)分析(2) 程序流程分析3、編碼及調(diào)試4、程序運(yùn)行截圖四、總結(jié)與體會 五、參考文獻(xiàn) 三、編程題部分1 、設(shè)計(jì)內(nèi)容完成一個管理類的綜合型設(shè)計(jì):銀行ATM模擬存取系統(tǒng)。要求學(xué)生進(jìn)行數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)、對函數(shù)進(jìn)行模塊化結(jié)構(gòu)化設(shè)計(jì)、并靈活運(yùn)用數(shù)組、結(jié) 構(gòu)體、指針、文件等多種數(shù)據(jù)類型設(shè)計(jì)開發(fā)系統(tǒng)。通過寫程序,學(xué)生應(yīng)掌 握用計(jì)算機(jī)程序設(shè)計(jì)語言解決實(shí)際問題的方法、步驟。該系統(tǒng)應(yīng)該具有以 下功能:1 )賬戶管理功能a) 開戶:完成賬戶注冊的功能。即輸入賬戶的相關(guān)信息。要

2、求賬戶號長度 12 位,密碼長度不得低于 6 位,必須使用暗碼,賬戶信息保存到數(shù)組中,賬戶信息最后保存到相關(guān)文件中;b) 賬戶登錄:輸入賬戶、密碼,驗(yàn)證是否能夠登錄該系統(tǒng);c) 密碼修改:輸入兩次相同的密碼方可修改。2) 賬務(wù)管理功能a) 存款:每筆存款金額大于 0元小于等于 1000 元,以 50元為基本單位。需記錄交易日期和時(shí)間b) 取款:每筆取款金額大于等于 100 元小于等于 2000元,以 50 元為基 本單位。需記錄交易日期和時(shí)間。c) 轉(zhuǎn)賬:每筆轉(zhuǎn)賬金額大于等于 100 元小于等于 5000 元。需記錄交易日 期和時(shí)間。3) 查詢功能a) 存款記錄查詢b) 取款記錄查詢c) 轉(zhuǎn)賬

3、記錄查詢d) 余額查詢4) 文件功能及其它功能:數(shù)據(jù)都應(yīng)保存在相關(guān)文件中。2、設(shè)計(jì)( 1) 數(shù)據(jù)分析( 描述定義的各主要變量的作用及意義 );char zhanghao16;/* 用戶賬號 */char xingming9;/* 用戶姓名 */char mima7;/* 賬戶密碼 */char shengfenzheng19;/* 用戶身份證號 */float yue;/* 賬戶余額 */char kaihushijian50;/* 開戶時(shí)間 */char zhanghao16;/* 交易的賬號 */char jiaoyishijian50;/* 交易時(shí)間 */char leixing5;/*

4、 交易類型 */char duifangzhanghao12;/* 交易時(shí)的對方賬號 */intzhanghuxuhao=0,jiaoyixuhao=0,dangqianxiabiao=0,duifangzhang huxiabiao=0;/* 賬戶序號,交易序號,當(dāng)前登錄的賬戶下標(biāo),轉(zhuǎn)賬時(shí) 對方的賬戶下標(biāo) */注冊函數(shù):int baiwei,shiwei,gewei,len;/* 定義賬號的后三位 */char mima27;/* 注冊時(shí)第二次輸入的密碼 */登錄函數(shù):char zhanghao16,mima7;/* 登錄時(shí)輸入的賬號和密碼 */裝載和保存文件函數(shù) :FILE *fp;/*

5、定義文件指針 */char wenjianming13;/*定義輸入的文件名 */存、取款,轉(zhuǎn)賬函數(shù):float jine;/* 輸入的存、取款,轉(zhuǎn)賬金額 */char t30;/* 把取得的存、取款,轉(zhuǎn)賬時(shí)間賦給該數(shù)組 */轉(zhuǎn)賬函數(shù) :char duifangzhanghao16,c;/* 輸入的對方賬號賦給該數(shù)組。在判斷是否繼續(xù)時(shí),把輸入的字符 Y或N賦給c,以便讀入選擇*/修改密碼函數(shù):舊密碼,第一次輸入的新char mima7,xinmima17,xinmima27;/*密碼,第二次輸入的新密碼 */2)程序流程分析( 描述主程序的基本構(gòu)成、函數(shù)設(shè)計(jì)、函數(shù)的調(diào)用關(guān) 系、各部分的流程圖等

6、。 )主程序的基本構(gòu)成: :struct Zhanghu ;/* 賬戶的結(jié)構(gòu)體 */ typedef structJiaoyi;/* 交易記錄的結(jié)構(gòu)體 */int menu();/*主菜單函數(shù) */void zhuce(); /*主菜單功能函數(shù)注冊函數(shù) */void denglu(); /*主菜單功能函數(shù)登錄函數(shù) */void zhuangzai(); /*主菜單功能函數(shù)裝載數(shù)據(jù)函數(shù)*/void baocun(); /*主菜單功能函數(shù)保存數(shù)據(jù)函數(shù)*/int denglu_menu(); /*登錄菜單函數(shù) */void cunkuan(); /*登錄菜單功能函數(shù)存款函數(shù)*/void qukuan

7、(); /*登錄菜單功能函數(shù)取款函數(shù)*/void zhuanzhang(); /*登錄菜單功能函數(shù)轉(zhuǎn)賬函數(shù)*/void chaxun(); /*登錄菜單功能函數(shù)查詢函數(shù)*/void xiugaimima(); /*登錄菜單功能函數(shù)修改密碼函數(shù) */int chaxun_menu();/*查詢菜單函數(shù) */void chaxun_yue();/*查詢菜單功能函數(shù)查詢余額函數(shù) */void chaxun_mingxi(); /*查詢菜單功能函數(shù)查詢明細(xì)函數(shù) */void chaxun_qukua n(); /*查詢菜單功能函數(shù)一查詢?nèi)】詈瘮?shù)*/void chaxun_zhua nzha ng();

8、/*查詢菜單功能函數(shù)一查詢轉(zhuǎn)賬函數(shù)*/函數(shù)設(shè)計(jì):本程序在函數(shù)設(shè)計(jì)上采用結(jié)構(gòu)化程序設(shè)計(jì)方法,自頂向下,逐步根據(jù)功能 設(shè)計(jì)函數(shù),逐步細(xì)化設(shè)計(jì),由淺入深,模塊化設(shè)計(jì),保證了程序的可讀性 和質(zhì)量。先設(shè)計(jì)主菜單(一級菜單)的功能函數(shù),再設(shè)計(jì)二級菜單的功能冊I款 款 賬詢函數(shù),自頂而下,逐步細(xì)化。如圖示意:(第二層:丨樣I 設(shè)計(jì)):“ 注 i二級菜單(第三層設(shè)計(jì)) 函數(shù)調(diào)用關(guān)系:maichaxu注冊函數(shù)的流程圖nuUchaxun_cunkuan chaxun qukuanchaxun zhuanzhang幵始YN密碼輸進(jìn)入登陸界面N執(zhí)行 switch功能return輸入兩次新NYreturn;密碼修改成功

9、結(jié)束開始束 system回els);輸出存款的交易記錄存款函數(shù)的流程圖:取款函數(shù)的流程圖:取款金額大于賬戶余額jine%50!=7輸出提示,retur調(diào)用時(shí)間函數(shù)調(diào)用strepy 函數(shù)復(fù)制賬號、類型、時(shí)間。計(jì)算余轉(zhuǎn)賬函數(shù)的流程圖:輸出存款的交易記錄Y#in clude#i ncludevstri ng.h#in clude #in clude#defi ne ZHANGHUSHU 100/*賬戶的結(jié)構(gòu)體*/ struct Zhan ghuchar xingming9;/* 用戶姓名 */char mima7;/* 賬戶密碼 */char shengfenzheng19;/* 用戶身份證號 */

10、float yue;/* 賬戶余額 */char kaihushijian50;/* 開戶時(shí)間 */;typedef struct /*交易記錄的結(jié)構(gòu)體 */char zhanghao16;/* 交易的賬號 */char jiaoyishijian50;/* 交易時(shí)間 */char leixing5;/* 交易類型 */float jiaoyijine;/* 交易金額 */float jiaoyiyue;/* 交易后的余額 */char duifangzhanghao12;/* 交易時(shí)的對方賬號 */ Jiaoyi;struct Zhanghu zhanghu100;/*定義賬戶的結(jié)構(gòu)體數(shù)組,

11、可以注冊 100個賬戶 */int zhanghuxuhao=0,jiaoyixuhao=0,dangqianxiabiao=0,duifangzhanghuxi abiao=0;/* 賬戶序號,交易序號,當(dāng)前登錄的賬戶下標(biāo),轉(zhuǎn)賬時(shí)對方的賬 戶下標(biāo) */Jiaoyi jiaoyi1000;/* 定義交易記錄的結(jié)構(gòu)體數(shù)組,可以保存 1000 條交易記錄 */int menu(); /*聲明主菜單函數(shù) */void zhuce(); /*聲明注冊函數(shù) */void denglu(); /*聲明登錄函數(shù) */void zhuangzai(); /*聲明裝載數(shù)據(jù)函數(shù) */void baocun();

12、/*聲明保存數(shù)據(jù)函數(shù) */int denglu_menu(); /*聲明登錄菜單函數(shù) */void cunkuan(); /*聲明存款函數(shù) */void qukuan(); /*聲明取款函數(shù) */void zhuanzhang(); /*聲明轉(zhuǎn)賬函數(shù) */void chaxun(); /*聲明查詢函數(shù) */void xiugaimima(); /*聲明修改密碼函數(shù) */int chaxun_menu(); /*聲明查詢菜單函數(shù) */void chaxun_yue(); /*聲明查詢余額函數(shù) */void chaxun_mingxi(); /*聲明查詢明細(xì)函數(shù) */void chaxun_cun

13、kuan(); /*聲明查詢存款函數(shù) */void chaxun_qukuan(); /*聲明查詢?nèi)】詈瘮?shù) */void chaxun_zhuanzhang();/*聲明查詢轉(zhuǎn)賬函數(shù) */void main()/* 主函數(shù) */system(color 1F);/* 設(shè)置運(yùn)行界面的背景顏色為藍(lán)色 */ 機(jī)!nnnttt);printf(nnnnnnnnttt歡 迎 使 用 ATM 終 端system(pause);/* 暫停功能 */ system(cls);/*清屏 */for(;)/* 空循環(huán)語句 */switch(menu() /*case 1:zhuce();/*printf(ttt)

14、;break;case 2:denglu();/*printf(ttt);break;case 3:zhuangzai();/*printf(ttt);break;case 4:baocun();/*printf(ttt);主菜單選擇判斷 */調(diào)用注冊函數(shù) */調(diào)用登錄函數(shù) */調(diào)用裝載數(shù)據(jù)的函數(shù) */調(diào)用保存數(shù)據(jù)的函數(shù) */break;case 0:printf(ttt歡迎使用ATM終端機(jī)管理系統(tǒng)。謝謝!n); /* 結(jié)束程序*/ printf(ttt); system(pause); exit(0);int menu() /* 定義主菜單函數(shù) */char c;dosystem(cls);

15、 /* 每次選擇運(yùn)行前清屏 */n);printf(tt *ATM 終 端 機(jī) 管 理 系 統(tǒng) 主 菜 單 *n); /* 主菜單選擇 */printf(ttn);printf(tt *| 1.注冊 |n);printf(tt *| 2.登錄 |n);printf(tt *| 0.退出 |n);printf(ttn);prin tf(tt*AA*A A*A A*A A*AA*AA*A A*A A*AA*AA*n);printf(ttn);printf(tttc=getchar(); /* while(c4);return(c-0); /*c請作出選擇 (0-4):);讀入選擇 */變?yōu)榭蘸蠓祷?/p>

16、重新選擇 */定義主菜單里的各功能函數(shù)函數(shù)*/void zhuce() /* 定義注冊函數(shù) */int baiwei,shiwei,gewei,len;/*定義賬號的后三位 */char mima27;/* 注冊時(shí)第二次輸入的密碼 */char t30;/* 開戶時(shí)間 */int i,j=0;time_t rawtime;struct tm *timeinfo;time(&rawtime);/* 調(diào)用時(shí)間函數(shù),取得開戶時(shí)間 */ timeinfo=localtime(&rawtime);strcpy(t,asctime(timeinfo);for(i=0;istrlen(t);i+)if(ti

17、=n)ti=0;break;baiwei=zhanghuxuhao/100;shiwei=zhanghuxuhao/10%10;gewei=zhanghuxuhao%10;zhanghuzhanghuxuhao.zhanghao12=baiwei+0;zhanghuzhanghuxuhao.zhanghao13=shiwei+0;zhanghuzhanghuxuhao.zhanghao14=gewei+0; zhanghuzhanghuxuhao.zhanghao15=0;system(cls);/* 運(yùn)行前清屏 */printf(nnnttt 注冊功能 ZHUCE GONGNENGnnn);

18、 printf(tt 請輸入姓名: );fflush(stdin);/* 消耗輸入字符后的回車操作 */scanf(%s,zhanghuzhanghuxuhao.xingming);doprintf(tt 請輸入 6 位數(shù)密碼: );fflush(stdin); scanf(%s,zhanghuzhanghuxuhao.mima); len=strlen(zhanghuzhanghuxuhao.mima);if(len!=6)/* 判斷密碼是否為 6 位*/printf(tt 您的密碼不是 6 位數(shù)! );system(pause);return;/ 此處用字符串長度函數(shù)來判斷密碼的位數(shù)pri

19、ntf(tt 請?jiān)俅屋斎朊艽a: );fflush(stdin);scanf(%s,mima2);判斷兩次if(strcmp(zhanghuzhanghuxuhao.mima,mima2)!=0)/* 密碼輸入是否相同 */j+;printf(tt您的密碼輸入錯誤!您還有 d次機(jī)會輸入密碼!n,3-j);if(j=3)/* 密碼輸入錯誤不得超過三次 */ system(pause);return;while (strcmp(zhanghuzhanghuxuhao.mima,mima2)!=0);doprintf(tt 請輸入身份證號: );fflush(stdin);scanf(%s,zhang

20、huzhanghuxuhao.shengfenzheng);len=strlen(zhanghuzhanghuxuhao.shengfenzheng);if(len!=18&len!=15)/* 判斷身份證號位數(shù)是否為 15 位或 18 位 */printf( 身份證號錯誤! 請輸入 15 位或 18 位身份證號! n);while(len!=18&len!=15);printf(tt 請輸入存入金額: );fflush(stdin);存款金額必須為 50scanf(%f,&zhanghuzhanghuxuhao.yue);if(int)zhanghuzhanghuxuhao.yue%50!=

21、0)/* 的整數(shù)倍 */printf( 本終端機(jī)只接受 50 元或 100 元面值的存款! );system(pause);return;strcpy(zhanghuzhanghuxuhao.kaihushijian,t);/*復(fù) 制 開 戶 時(shí) 間*/strcpy(jiaoyijiaoyixuhao.zhanghao,zhanghuzhanghuxuhao.zhanghao);/*/strcpy(jiaoyijiaoyixuhao.leixing,存 );/* 復(fù)制交易類型 */strcpy(jiaoyijiaoyixuhao.jiaoyishijian,t);/* 復(fù)制交易時(shí)間 */ ji

22、aoyijiaoyixuhao.jiaoyijine=zhanghuzhanghuxuhao.yue;/* 第一次交易的賬戶余額值賦給交易經(jīng)額的值 */jiaoyijiaoyixuhao.jiaoyiyue=zhanghudangqianxiabiao.yue;/* 第 一次交易的賬戶余額值賦給交易余額的值 */printf(ntt 開戶成功! t);system(pause);/* 暫停功能 */ 輸出賬戶第一次交易的數(shù)據(jù)清單printf(nn 賬號 tt 交易類型 t 交易金額 t 余額 tt 交易時(shí)間n);printf(%st,zhanghuzhanghuxuhao.zhanghao);

23、printf( %s,jiaoyijiaoyixuhao.leixing);printf(tt%.2f,zhanghuzhanghuxuhao.yue);printf(t %.2f,zhanghuzhanghuxuhao.yue);printf( %stnn,zhanghuzhanghuxuhao.kaihushijian);zhanghuxuhao+;/* 賬戶序號加一 */jiaoyixuhao+;/* printf(tttt);system(pause);/* void denglu() /*交易序號加一 */暫停 */定義登錄函數(shù) */char zhanghao16,mima7;/*

24、登錄時(shí)輸入的賬號和密碼 */int i=0,j=0;system(cls);/* 清屏 */printf(nnnttt 登 錄 功 能 DENGLU GONGNENGnnn);/* 進(jìn)入登錄得功能界面 */printf(tt 輸入賬號: );scanf(%s,zhanghao);/* 輸入賬號 */for( i=0;izhanghuxuhao;i+)/* 在已注冊的賬號中依次尋找該賬號*/if(strcmp(zhanghao,zhanghui.zhanghao)=0)dangqianxiabiao=i;/* 若找到,則跳出循環(huán) */ break;if(i=zhanghuxuhao)/* 注冊的

25、賬號中沒輸入的賬號 */printf(tt 當(dāng)前賬號不存在! );system(pause);return;doprintf(ntt 輸入密碼: );scanf(%s,mima);if(strcmp(mima,zhanghui.mima)!=0)j+;prin tf(tt您的密碼輸入錯誤!您還有d次機(jī)會輸入密碼!nn,3-j); system(pause);return;while(strcmp(mima,zhanghui.mima)!=0);for(;)/* 空循環(huán)語句 */switch(denglu_menu() /*case 1:cunkuan();/*printf(ttt); brea

26、k;case 2:qukuan();/* printf(ttt); break;case 3:zhuanzhang();/*printf(ttt); break;case 4:chaxun();/*printf(ttt); break;case 5:xiugaimima();/*printf(ttt);登陸界面選擇判斷 */調(diào)用存款函數(shù) */調(diào)用取款函數(shù) */調(diào)用轉(zhuǎn)賬函數(shù) */調(diào)用查詢函數(shù) */調(diào)用修改密碼函數(shù) */break;case 0:return;/* 返回上一級菜單界面 */intdenglu_menu()/*定義登錄菜單函數(shù)*char c;dosystem(cls); /*每次選擇

27、運(yùn)行前清屏 */printf(nnntt* 歡 迎 進(jìn) 入 登 錄 界面 !*nn); /*登錄界面菜單選擇 */printf(tt *| 1.存款 |n);printf(tt *| 2.取款 |n);printf(tt *| 3.轉(zhuǎn)賬 |n);printf(tt *| 4.查詢 |n);printf(tt *| 5.修改密碼 |n);printf(tt *| 0.返回 |n);printf(tt*n);printf(tttc=getchar(); /*while(c5);return(c-0); /*c請作出選擇 (0-5):);讀入選擇 */變?yōu)榭蘸蠓祷刂匦逻x擇 */void zhuang

28、zai() /* 定義裝載函數(shù) */ FILE *fp;/*定義文件指針 */int i;char wenjianming13;/* 定義輸入的文件名 */printf(tt 請輸入打開的文件名 (文件名 .txt) :);fflush(stdin);scanf(%s,wenjianming);/* 輸入要讀入數(shù)據(jù)的文件名 */if (fp=fopen(wenjianming,r)=NULL)/* 找不到輸入的文件名 */ printf(tt 無法打開該文件! );system(pause);return;fscanf(fp,%dn,&zhanghuxuhao);fscanf(fp, 賬號 t

29、t 姓名 t 密碼 t 身份證號 t 余額 t 開戶時(shí)間 n);for(i=0;izhanghuxuhao;i+)/* 依次從文件讀入注冊賬戶的信息 */ fscanf(fp,%16s%9s%7s%19s%12f,zhanghui.zhanghao, zhanghui.xingming,zhanghui.mima, zhanghui.shengfenzheng,&zhanghui.yue); fgets(zhanghui.kaihushijian,30,fp);fscanf(fp,n);fscanf(fp,%dn,&jiaoyixuhao);fscanf(fp,賬號tt交易時(shí)間ttt交易類型交

30、易金額交易余額t 對方賬號 n);for(i=0;ijiaoyixuhao;i+)/*依次從文件讀入交易記錄的信息 */ fscanf(fp,%16s,jiaoyii.zhanghao); fgets(jiaoyii.jiaoyishijian,30,fp); fscanf(fp,%5s%12f%12f,jiaoyii.leixing, &jiaoyii.jiaoyijine,&jiaoyii.jiaoyiyue); fgets(jiaoyii.duifangzhanghao,16,fp);fscanf(fp,n);fclose(fp);/* 關(guān)閉文件 */printf(ttt讀入成功! nn

31、);printf(ttt);system(pause);void baocun() /* 定義保存函數(shù) */FILE *fp;/* 文件指針 */int i;char wenjianming13;printf(tt 請輸入文件名 ( 輸入格式為:文件名 .txt):); fflush(stdin);scanf(%s,wenjianming);/* 輸入要保存的文件名 */ if(fp=fopen(wenjianming,w)=NULL)printf(nttt 無法打開文件 !nttt); system(pause);return; fprintf(fp,%dn,zhanghuxuhao);fp

32、rintf(fp, 賬號 tt 姓名 t 密碼 t 身份證號 ttt 開戶時(shí)間 n);for(i=0;izhanghuxuhao;i+)/* 把賬戶信息依次輸出到指定文件 */fprintf(fp,%-16s%-9s%-7s%-19s%-12.2f%-30sn,zhanghui.zha nghao,zhanghui.xingming,zhanghui.mima,zhanghui.shengfenzheng,zhanghui.yue,zhanghui.kaihushijian);fprintf(fp,%dn,jiaoyixuhao);fprintf(fp, 賬號tt 交易時(shí)間ttt交易類型t交易

33、金額t交易余額 tt 對方賬號 n);for(i=0;ijiaoyixuhao;i+)/*把交易記錄的信息依次輸出到指定文件*/fprintf(fp,%-16s%-30s%-5s%-12.2f%-12.2f%-16sn,jiaoyii.zhanghao,jiaoyii.jiaoyishijian, jiaoyii.leixing,jiaoyii.jiaoyijine,jiaoyii.jiaoyiyue,jiaoyii.duifangzhanghao);fclose(fp);/* 關(guān)閉文件 */printf(tttt保存成功! n);printf(ntttt);system(pause);voi

34、d cunkuan() /* 定 義 存 款 函 數(shù) */float jine;/* 輸入的存款金額 */char t30;/* 把取得的存款時(shí)間賦給該數(shù)組 */int i;time_t rawtime;struct tm *timeinfo;system(cls);/* 清屏 */printf(nnnttt 存 款 功 能 CUNKUAN GONGNENGnnn);/* 進(jìn)入存款功能界面 */printf(tt 本終端機(jī)只接收 50 元或 100 元幣值人民幣! nnttt 請輸入存款金額: );/* 提示信息 */scanf(%f,&jine);/* 輸入存款金額 */if(int)jin

35、e%50!=0|jine=0)/* 存款金額必須為 50 的整數(shù)倍且為正 數(shù)*/printf(ntt 請輸入面值為 50 或 100 的存款金額 ! 請勿輸入負(fù) 數(shù)或 0!nttt);system(pause);return;else/* 調(diào)用時(shí)間函數(shù),把取得的存款時(shí)間賦給 t 數(shù)組 */time(&rawtime);timeinfo=localtime(&rawtime);strcpy(t,asctime(timeinfo);for(i=0;i zhanghudangqianxiabiao.yue)/* 賬戶余額是否足夠取款 */printf(ntt 您的余額不足 !);system(pau

36、se);return;if(int)jine%50!=0|jine=0)/* 取款金額必須為 50 的整數(shù)倍且為正 數(shù)*/printf(ntt 請輸入面值為 50 或 100 的存款金額 ! 請勿輸入負(fù)數(shù)或 0!nttt);system(pause);return;else/* 調(diào)用時(shí)間函數(shù),把取得的交易時(shí)間賦給 t 數(shù)組 */time(&rawtime);timeinfo=localtime(&rawtime);strcpy(t,asctime(timeinfo);for(i=0;istrlen(t);i+)if(ti=n)ti=0;break;strcpy(jiaoyijiaoyixuha

37、o.zhanghao,zhanghudangqianxiabiao.zh anghao);/* 把當(dāng)前登錄賬號復(fù)制給交易記錄里的賬號 */strcpy(jiaoyijiaoyixuhao.leixing,取 );/* 復(fù)制交易類型 */strcpy(jiaoyijiaoyixuhao.jiaoyishijian,t);/* 復(fù)制交易時(shí)間 */ jiaoyijiaoyixuhao.jiaoyijine=jine;/*取款金額值賦給交易金額*/zhanghudangqianxiabiao.yue-=jiaoyijiaoyixuhao.jiaoyijine;/*計(jì)算取款后的賬戶余額 */jiaoyi

38、jiaoyixuhao.jiaoyiyue=zhanghudangqianxiabiao.yue;/* 取款后余額等于賬戶余額 */printf(ntt 取款成功! tt);system(pause);printf(n 賬號 tt 交易類型 t 交易金額 t 交易余額 tt 交易時(shí)間 n);/ 輸出賬戶和交易的數(shù)據(jù)清單printf(%st,jiaoyijiaoyixuhao.zhanghao);printf( %s,jiaoyijiaoyixuhao.leixing);printf(tt%.2f,jiaoyijiaoyixuhao.jiaoyijine);printf(t %.2f,jiaoy

39、ijiaoyixuhao.jiaoyiyue);printf( %st,jiaoyijiaoyixuhao.jiaoyishijian);jiaoyixuhao+;/* 交易序號加一 */printf(tttt);system(pause);void zhuanzhang() /*定義轉(zhuǎn)賬函數(shù)*/char t30;/* 時(shí)間數(shù)組 */int i;time_t rawtime;struct tm *timeinfo;float jine;/* 轉(zhuǎn)賬金額 */char duifangzhanghao16,c;/* 輸入的對方賬號賦給該數(shù)組。在判斷是否繼續(xù)時(shí),把輸入的字符Y或N賦給c,以便讀入選擇*

40、/system(cls);/* 清屏 */printf(nnntt轉(zhuǎn) 賬 功 能 ZHUANZHANGGONGNENGnnn);/* 進(jìn)入轉(zhuǎn)賬功能界面 */printf(ttt 請輸入對方賬號: );scanf(%s,&duifangzhanghao);/* 輸入對方賬號 */if(strcmp(zhanghudangqianxiabiao.zhanghao,duifangzhanghao)=0)/* 判斷輸入的賬號是否與當(dāng)前用戶的賬號相同 */printf(ntt對不起!用戶不能給自己轉(zhuǎn)賬! t);system(pause);return;for( i=0;izhanghuxuhao;i+)

41、if(strcmp(duifangzhanghao,zhanghui.zhanghao)=0)/*在 已注冊賬號里依次尋找對方賬號 */duifangzhanghuxiabiao=i;/* 若找到,跳出該循環(huán)語句 */ break;if(i=zhanghuxuhao)/* 若在已注冊賬號里沒找到輸入的對方賬號, 返 回*/printf(tt 當(dāng)前賬號不存在! t);system(pause);return;else/* 調(diào)用時(shí)間函數(shù),把取得的轉(zhuǎn)賬交易時(shí)間賦給 t 數(shù)組 */time(&rawtime); timeinfo=localtime(&rawtime); strcpy(t,asctim

42、e(timeinfo);for(i=0;istrlen(t);i+)if(ti=n)ti=0;break;printf(nttt *%s,&zhanghuduifangzhanghuxiabiao.xingming2);/*方用戶的名,不顯示出姓 */printf(tt 是否繼續(xù) (Y/N): );fflush(stdin);scanf(%c,&c); /* 讀入選擇 */if(c!=y&c!=Y)printf(ntt 退出轉(zhuǎn)賬功能 ! 歡迎使用其它功能system(pause);return;elsedoprintf(nttt 請輸入轉(zhuǎn)賬金額: );scanf(%f,&jine);if(ji

43、nezhanghudangqianxiabiao.yue)/*額范圍內(nèi) */printf(ntt 對不起 ! 您的余額不足 , 請?jiān)谟囝~范圍內(nèi)進(jìn) 行轉(zhuǎn)賬。 ntt);system(pause);return;while(jine=0);printf(ntt 請用戶謹(jǐn)慎考慮,以防受騙! );/* 提示謹(jǐn)慎信息 */ printf(t 是否確定轉(zhuǎn)賬 (Y/N): );fflush(stdin);scanf(%c,&c); /* 讀入選擇 */if(c!=y&c!=Y)printf(ntt 退出轉(zhuǎn)賬功能 ! 歡迎使用其它功能 !); system(pause);return;strcpy(jiaoy

44、ijiaoyixuhao.zhanghao,zhanghudangqianxiabiao.zh anghao);/* 把當(dāng)前用戶賬號復(fù)制給此次交易記錄的賬號 */strcpy(jiaoyijiaoyixuhao.leixing,轉(zhuǎn)出 );/* 復(fù)制交易類型 */strcpy(jiaoyijiaoyixuhao.duifangzhanghao,zhanghuduifangzhanghuxiabiao.zhanghao);/* 復(fù)制交易的對方賬號 */strcpy(jiaoyijiaoyixuhao.jiaoyishijian,t);/* 復(fù)制交易時(shí)間 */jiaoyijiaoyixuhao.jiaoyijine=jine;/* 復(fù)制交易金額 */zhanghudangqianxiabiao.yue-=jiaoyijiaoyixuhao.jiaoyijine;/* 計(jì)算轉(zhuǎn)賬后的賬戶余額 */jiaoyijiaoyixuhao.jiaoyiyue=zhanghudangqian

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論