




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、 (芙蓉學(xué)院)(芙蓉學(xué)院) 軟件工程 實(shí)驗(yàn)報(bào)告課 題: 銀行儲(chǔ)蓄管理系統(tǒng) 姓 名: 譚 斌 學(xué) 號(hào): 07120115 同組姓名: 專業(yè)班級: 芙蓉計(jì)科0701 指導(dǎo)教師: 周學(xué)清 設(shè)計(jì)時(shí)間: 2011/3/20 評閱意見:評定成績: 指導(dǎo)老師簽名: 年 月 日銀行儲(chǔ)蓄管理系統(tǒng)目錄1 需求分析11 系統(tǒng)的功能性需求12 系統(tǒng)需求分析規(guī)格說明書13 系統(tǒng)實(shí)體聯(lián)系(ER)圖14 系統(tǒng)數(shù)據(jù)流(DFD)圖15 系統(tǒng)數(shù)據(jù)字典16 面向數(shù)據(jù)流的設(shè)計(jì)方法1 需求分析系統(tǒng)中要求每個(gè)人銀行管理者都有一個(gè)系統(tǒng)帳號(hào),并每個(gè)帳號(hào)都有密碼,系統(tǒng)的一切操作(如:增加存儲(chǔ)用戶,提高利率等)都由管理者執(zhí)行,而不是由存諸用戶執(zhí)
2、行,也主是說存儲(chǔ)用戶并不直接與系統(tǒng)交互,而是通過管理員與系統(tǒng)交互。該系統(tǒng)主要有兩部份業(yè)務(wù)功能,存款與取款。儲(chǔ)戶填寫的存款單或取款單由業(yè)務(wù)員輸入系統(tǒng),如果是存款則系統(tǒng)記錄存款人姓名,住址(或電話號(hào)碼),身份證號(hào)碼,存款類型,存款日期,到期日期,利率及密碼(可選)等信息,并打印存單給儲(chǔ)戶;如果是取款而且存款時(shí)留有密碼,則系統(tǒng)首先核對儲(chǔ)戶密碼,若密碼正確或存款時(shí)未留密碼,則系統(tǒng)計(jì)算得利息并打印出利息清單給儲(chǔ)戶。11系統(tǒng)的功能性需求 系統(tǒng)為管理者提供主功能界面 系統(tǒng)在啟動(dòng)時(shí)要求管理者輸入登錄帳號(hào)與密碼 系統(tǒng)要通過管理員執(zhí)行一系操作(如:添加用戶,修改,查詢,刪除等) 管理員代用戶實(shí)現(xiàn)存款,取款,查詢等
3、操作 儲(chǔ)戶的一切信息,存儲(chǔ)在數(shù)據(jù)庫表中12系統(tǒng)需求分析規(guī)格說明書l 實(shí)現(xiàn)儲(chǔ)戶開戶登記l 辦理定期存款帳l 辦理定期存款手續(xù)l 辦理活期取款帳l 辦理活期取款手續(xù)l 實(shí)現(xiàn)利息計(jì)算l 輸出明細(xì)表l 數(shù)據(jù)備份和數(shù)據(jù)恢復(fù)功能l 查看帳戶信息1.3系統(tǒng)ER圖系統(tǒng)主要關(guān)系模式:1 儲(chǔ)戶(儲(chǔ)戶姓名,住址,身份證號(hào)碼)2 管理員(員工號(hào),姓名)3 存款(儲(chǔ)戶姓名,員工號(hào),金額,存款類型,到期日期,存款日期)4 查詢(儲(chǔ)戶姓名,員工號(hào))5 取款(儲(chǔ)戶姓名,員工號(hào),金額,取款日期)住址身份證號(hào)碼姓名儲(chǔ)戶1 1金額存款類型到期日期存款日期查詢存款取款 n金額 n n取款日期管理員 打印存單打印清單系統(tǒng)查詢存款取款
4、n n n姓名清單信息員工號(hào)金額 n n n取款日期存款類型到期日期金額存款日期 1 1 11 11 5系統(tǒng)頂層數(shù)據(jù)流(DFD)圖 打印存單 開戶系統(tǒng)用戶業(yè)務(wù)員 取款 存款 存款 查詢 取款 打印清單16系統(tǒng)0層數(shù)據(jù)流(DFD)圖8打印存單 打印存單 儲(chǔ)戶信息文件 存取款信息變動(dòng) 密碼錯(cuò)誤 讀取儲(chǔ)戶信息5驗(yàn)證 1開戶 保存新用戶信息2存款 密碼正確2存款3取款3取款系統(tǒng)業(yè)務(wù)員儲(chǔ)戶4查詢6計(jì)算利息 7打印清單 利息清單17第2層DFD圖 儲(chǔ)戶信息文件 核對錯(cuò)誤 讀取信息22信息核對 存款填寫存款信息 核對信息21提交存款單 核對 正確23信息輸入系統(tǒng)24打印存單 打印 18第3層數(shù)據(jù)流圖 儲(chǔ)戶信
5、息文件 核對錯(cuò)誤 讀取信息32信息核對 更新儲(chǔ)戶信息31提交取款單填寫取款信息 核對信息 核對正確34打印清單33信息輸入系統(tǒng) 打印 取款 19第5層數(shù)據(jù)流圖 儲(chǔ)戶信息文件52身份驗(yàn)證51注冊新用戶信息 存儲(chǔ)信息 取款信息 取款通知 存款信息 存款通知 查詢信息 顯示信息 驗(yàn)證錯(cuò)誤110數(shù)據(jù)字典數(shù)據(jù)名字:注冊申請表數(shù)據(jù)來源:儲(chǔ)戶數(shù)據(jù)目的:儲(chǔ)戶信息數(shù)據(jù)組成:姓名+密碼+住址+身份證號(hào)碼數(shù)據(jù)名字:儲(chǔ)戶信息表數(shù)據(jù)來源:儲(chǔ)戶數(shù)據(jù)目的:身份驗(yàn)證數(shù)據(jù)組成:姓名+密碼+住址+身份證號(hào)碼+現(xiàn)有金額數(shù)據(jù)名字:利息清單數(shù)據(jù)來源:系統(tǒng)數(shù)據(jù)目的:儲(chǔ)戶數(shù)據(jù)組成:利息+姓名+取款時(shí)間+取款金額數(shù)據(jù)名字:存單數(shù)據(jù)來源:存款
6、信息表數(shù)據(jù)目的:儲(chǔ)戶數(shù)據(jù)組成:姓名+到期時(shí)間+存入類型+存入時(shí)間+利率+存入金額 數(shù)據(jù)名字:取款單數(shù)據(jù)來源:儲(chǔ)戶 數(shù)據(jù)目的:儲(chǔ)戶信息表數(shù)據(jù)組成:姓名+到期時(shí)間+存入類型+存入時(shí)間+利率+取款金額+身份證號(hào)數(shù)據(jù)名字:存款單數(shù)據(jù)目的: 存款信息表數(shù)據(jù)組成:姓名+到期時(shí)間+存入類型+存入時(shí)間+利率+存入金額+身份證號(hào)1.61確定輸入流和輸出流的邊界,從而孤立出變換中心。如圖:1.1 圖1.11.6.2完成“第一級分解”基于書上第三章第三題實(shí)現(xiàn)在銀行儲(chǔ)蓄管理系統(tǒng)在一級分解中,可將系統(tǒng)分解成三個(gè)子功能模塊:用戶操作,業(yè)務(wù)員操作,系統(tǒng)輸出。如下圖所示:銀行存儲(chǔ)管理系統(tǒng)用戶操作系統(tǒng)輸出 業(yè)務(wù)員操作1.6.3
7、完成“第二級分解”<1> 用戶操作的分解可將用戶操作分解為:開戶民,存款,取款,查詢。如下圖所示:用戶操作開戶存款取款查詢提交用戶申請表提交存款單提交用戶申請表提交用戶查詢表<2>業(yè)務(wù)員操作的分解業(yè)務(wù)員的操作是將用戶的操作傳送給系統(tǒng),代替用戶與系統(tǒng)交互,所以,業(yè)務(wù)員的操作與系統(tǒng)的操作基本類似,也可以近似地將業(yè)務(wù)員看作用戶。所以操作員操作可分解為:開戶,存款,取款,查詢并且如用戶在開戶時(shí)設(shè)有密碼,則進(jìn)行密碼驗(yàn)證。所以分解圖如下:業(yè)務(wù)員操作查詢?nèi)】畲婵铋_戶密碼驗(yàn)證提交用戶申請表提交存款單提交用戶申請表提交用戶查詢表<3> 系統(tǒng)輸出分解系統(tǒng)輸出可分解為:計(jì)算利息-
8、打印清單,保存新用戶信息,更新用戶信息,打印存單分解圖如下:系統(tǒng)輸出計(jì)算利息保存新用戶信息更新用戶信 息打印存單打印清單1.64使用設(shè)計(jì)度量和啟發(fā)式規(guī)則對第一次分割得到的軟件結(jié)構(gòu)進(jìn)一步精化。由于業(yè)務(wù)員的操作與用戶的操作基本相似,可以簡單化地認(rèn)為系統(tǒng)只與業(yè)務(wù)員交互,基于這個(gè)思想,將有利與簡化以后系統(tǒng)程序的設(shè)計(jì)與開發(fā)。精化圖如下:業(yè)務(wù)員操作銀行存儲(chǔ)管理系統(tǒng)用戶操作系統(tǒng)輸出查詢?nèi)】畲婵铋_戶計(jì)算利息打印存單更新用戶信息保存新用戶信息密碼驗(yàn)證提交用戶查詢表提交取款單提交存款單提交用戶申請表打印清單銀行儲(chǔ)蓄管理系統(tǒng)實(shí)驗(yàn)項(xiàng)目:銀行儲(chǔ)蓄實(shí)驗(yàn)項(xiàng)目一、銀行儲(chǔ)蓄系統(tǒng)主菜單模塊設(shè)計(jì)與實(shí)現(xiàn)11庫函數(shù)描述(原型、功能、頭
9、部文件)及其作用Time顯示當(dāng)前時(shí)間類 #include<time.H>System()調(diào)用dos命令 _sleep()停息#include<stdlib.H>String 字符串流#include<string.H>#include"myheader.h"中有調(diào)用的全部函數(shù)聲明12編碼(必須附加注釋)#include"myheader.h"void main()/背景顏色設(shè)置system("COLOR 16");/*顏色屬性由兩個(gè)十六進(jìn)制數(shù)字指定 - 第一個(gè)為背景,第二個(gè)則為前景。每個(gè)數(shù)字可以為以
10、下任何值之一: 0 = 黑色 8 = 灰色 1 = 藍(lán)色 9 = 淡藍(lán)色 2 = 綠色 A = 淡綠色 3 = 湖藍(lán)色 B = 淡淺綠色 4 = 紅色 C = 淡紅色 5 = 紫色 D = 淡紫色 6 = 黃色 E = 淡黃色 7 = 白色 F = 亮白色*/輸出=歡迎進(jìn)入銀行活期存款系統(tǒng)=int i;for(i=0;i<13;i+)cout<<'='cout<<"歡迎進(jìn)入銀行活期存款系統(tǒng)"for(i=0;i<13;i+)cout<<'='cout<<endl;/列示當(dāng)前時(shí)間cout
11、<<"當(dāng)前時(shí)間:"for(i=0;i<6;i+)cout<<" "Time t=latesttime();t.print();/列示菜單mylist();cout<<"如果您不了解該系統(tǒng)請按N否則按Y: "/核實(shí)輸入是否為字符string check;while(1)cin>>check;if(check.length()>1)cout<<"您的輸入有誤請重新輸入:"continue;if(check0!='Y'&&am
12、p;check0!='N')cout<<"您的輸入有誤請重新輸入:"elsebreak;int mark=1;if(check0='N')mark=0;cout<<"友情提示:按對應(yīng)業(yè)務(wù)的編號(hào)即可進(jìn)行該業(yè)務(wù)!"<<endl<<"請繼續(xù):"<<endl;int flag=1;while(flag+)if(flag>2)system("cls");mylist();if(mark)cout<<"請選擇
13、業(yè)務(wù):"string servicenum; /核實(shí)輸入是否為字符 while(1)cin>>servicenum;if(servicenum.length()>1)cout<<"您的輸入有誤請重新輸入:"continue;elsebreak;cout<<"確認(rèn)請按Y,修改請按N,請選擇:"string mark;/核實(shí)輸入是否為字符while(1)cin>>mark;if(mark.length()>1)cout<<"您的輸入有誤請重新輸入:"cont
14、inue;if(mark0!='Y'&&mark0!='N')cout<<"您的輸入有誤請重新輸入:"elsebreak;if(mark0='N')continue;if(servicenum0='0')break;cout<<" 正在處理請稍等."_sleep(1000);cout<<"."_sleep(1000);cout<<".n"_sleep(1000);switch(servic
15、enum0)/開戶case '1': creaccount();break;/存款case '2': deposit();break;/取款case '3': withdraw();break;/計(jì)息case '4': computeprofit();break;/查詢case '5': checkbalance();break;/排序case '6': order();break;/系統(tǒng)介紹case '7': about(); break;default: cout<<
16、"對不起,您的選擇超出了我們的業(yè)務(wù)范圍。"<<endl;cout<<"交易完畢,謝謝合作!"<<endl;13 mylist.Cpp 主函數(shù)顯示菜單void mylist()int i;for(i=0;i<11;i+)cout<<' 'cout<<"*主菜單*"<<endl;for(i=0;i<12;i+)cout<<" "cout<<""<<endl;for(
17、i=0;i<12;i+)cout<<" "cout<<"0.退出 "<<endl;for(i=0;i<12;i+)cout<<" "cout<<"1.開戶 "<<endl;for(i=0;i<12;i+)cout<<" "cout<<"2.存款 "<<endl;for(i=0;i<12;i+)cout<<" "co
18、ut<<"3.取款 "<<endl;for(i=0;i<12;i+)cout<<" "cout<<"4.計(jì)息 "<<endl;for(i=0;i<12;i+)cout<<" "cout<<"5.查詢 "<<endl;for(i=0;i<12;i+)cout<<" "cout<<"6.排序 "<<endl;fo
19、r(i=0;i<12;i+)cout<<" "cout<<"7.關(guān)于 "<<endl;for(i=0;i<12;i+)cout<<" "cout<<""<<endl;void about()cout<<"銀行活期存款系統(tǒng) 作者:張瑞"<<endl;cout<<"該系統(tǒng)嚴(yán)格按照國際銀行活期存款規(guī)則編寫,"<<endl;cout<<&qu
20、ot;如果您什么不懂,請?jiān)诘谝徊讲僮髦休斎隢."<<endl;cout<<"注意:請按照提示進(jìn)行操作.否則后果自負(fù)!"<<endl;cout<<"版權(quán)所有,打擊盜版!"<<endl;over();return;14實(shí)驗(yàn)小結(jié)(實(shí)驗(yàn)遇到的問題,解決方法)1.調(diào)用外部函數(shù)時(shí)光簡單聲明不行 必需加個(gè)外部修飾extern2.也可調(diào)用外部變量 同樣用extern3.把定義的函數(shù)都放到myheader.H的頭文件中聲明實(shí)驗(yàn)項(xiàng)目二、銀行儲(chǔ)蓄系統(tǒng)開戶模塊設(shè)計(jì)與實(shí)現(xiàn)21庫函數(shù)描述(原型、功能、頭部文件)及
21、其作用#include<iostream>/c+的標(biāo)準(zhǔn)輸入輸出#include<stdlib.h>/c的庫函數(shù)#include<string>/字符串流#include<conio.h>/getch()鍵盤輸入屏幕不輸出#include<vector>/STL中的迭代器#include <shlobj.h>/messagebox()消息框#include<time.h>/時(shí)間類的頭文件#include<stdio.h>/c標(biāo)準(zhǔn)輸入輸出和文件流using namespace std;22帳戶類定義#i
22、nclude"myheader.h"/帳號(hào)類是定義在myhead.H頭文件里class Timepublic:int year,month,day,hour,minute,second;Time(int a=0,int b=0,int c=0,int d=0,int e=0,int f=0):year(a),month(b),day(c),hour(d),minute(e),second(f)void print()cout<<year<<"年"<<month<<"月"<<d
23、ay<<"日"<<hour<<"時(shí)"<<minute<<"分"<<second<<"秒"<<endl;void print1()cout<<year<<"年"<<month<<"月"<<day<<"日"<<hour<<"時(shí)"<<minu
24、te<<"分"<<second<<"秒"/兩個(gè)時(shí)間段相距的天數(shù)int isHalfYear(Time t)int ct;if(year>t.year)ct=(year-t.year-1)*360+(month-t.month+11)*30+day+30-t.day;else ct=(month-t.month-1)*30+day+30-t.day;return ct;void copy(Time f)/時(shí)間拷貝year=f.year;month=f.month;day=f.day;hour=f.hour;minu
25、te=f.minute;second=f.second;/判斷時(shí)間是否大bool timebig(Time t)if(year>t.year)return false;else if(year<t.year)return true;else if(year=t.year)if(month>t.month)return false;else if(month<t.month)return true;else if(month=t.month)if(day>t.day)return false;else if(day<t.day)return true;else
26、 if(day=t.day)if(hour>t.hour)return false;else if(hour<t.hour)return true;else if(hour=t.hour)if(minute>t.minute)return false;else if(minute<t.minute)return true;else if(minute=t.minute)if(second>t.second)return false;else if(second<t.second)return true;else return true;elsereturn
27、true;elsereturn true;elsereturn true;return true;/檢查輸入的字符產(chǎn)是否全是數(shù)字bool checknum(const char*);/重載比較函數(shù)int strcmp(const char*s1,const char*s2);/錢數(shù)大些函數(shù)聲明void readmoney(char*);/定義帳號(hào)類class Account public:char name20,ID20,balance15,code10;Time time;Account(const char* a="",const char* b=""
28、;,const char* c="",const char* d="",Time e=Time(0,0,0,0,0,0)strcpy(name,a);strcpy(ID,b);strcpy(code,c);strcpy(balance,d);time=e;void print1()int i;for(i=0;i<30;i+)cout<<""cout<<endl;cout<<"姓名: "<<name<<endl;cout<<"身份
29、證號(hào): "<<ID<<endl;cout<<"余額: "<<balance<<endl;cout<<"余額大寫: "readmoney(balance);cout<<"開戶時(shí)間: "time.print();void print2()int i;for(i=0;i<30;i+)cout<<""cout<<endl;cout<<"姓名: "<<name
30、<<endl;cout<<"身份證號(hào): "<<ID<<endl;cout<<"余額: "<<balance<<endl;cout<<"余額大寫: "readmoney(balance);cout<<"上次計(jì)息時(shí)間(開戶時(shí)間): "time.print();class Rempublic:char ID20,money10;int flag;Time t;Rem(char*a="",char
31、*b="",int c=0,Time d=Time(0,0,0,0,0,0)strcpy(ID,a);strcpy(money,b);flag=c;t=d;void print()if(flag=0)t.print1();cout<<" "<<"取款"<<money<<"元"<<endl;if(flag=1)t.print1();cout<<" "<<"存款"<<money<
32、<"元"<<endl;/菜單void mylist();/開戶void creaccount();/存款void deposit();/取款void revisecode();/計(jì)息void computeprofit();/查詢void checkbalance();/排序色void creatcolor();/關(guān)于系統(tǒng)介紹void about();/大寫讀取金額void readmoney(char* s);/重載比較函數(shù)int strcmp(const char* s1,const char*s2);/結(jié)束void over();/求兩字符串之和vo
33、id plus(char*s1,char*s2);/求兩字符串之差void minus(char* s1,char* s2);/將字符串倒置void opposition(char * s);/檢查輸入的金額是否合法并對其進(jìn)行規(guī)范性修改bool checkmoney(char*s);/計(jì)算利息專用bool jixi(Account& a);/校驗(yàn)身份證號(hào)是否正確bool checkID(const char* s);/檢查所輸入的身份證號(hào)是否已開過戶,開過戶返回true,未開過返回falsebool finID(const char* s);/獲取當(dāng)前時(shí)間的time函數(shù)Time lat
34、esttime();/移位void change(char*ch);/輸出備忘錄void output(const char * s);23編碼(必須附加注釋)#include"myheader.h"void creaccount()/開戶cout<<"歡迎您在此開戶"<<endl;char ID20=""/檢查該身份證號(hào)是否符合中華人民共和國身份證號(hào)碼的編制規(guī)則while(1)cout<<"請輸入您的身份證號(hào): "<<endl;cin>>ID;if(ch
35、eckID(ID)break;elsecout<<"您的輸入有誤請重新輸入您的身份證號(hào):"<<endl;/檢查是否在此開過戶if(finID(ID)cout<<"您已在次開過戶。"<<endl;over();return;cout<<"請輸入您的姓名:"<<endl;string name;while(1)cin>>name;if(name.length()>8)cout<<"您的輸入有誤,請重新輸入。"<&
36、lt;endl;elsebreak;const char*copyname=name.c_str();/name的首地址 且必須是const只讀的cout<<"請輸入您的密碼:"<<endl;cout<<"注意:密碼更正每人只有三次機(jī)會(huì),密碼只有六位。"<<endl;char cod7="",flag=0;/計(jì)數(shù)while(1)if(flag)if(flag=3)break;cout<<"您的密碼輸入有誤,"int i;cout<<"
37、請輸入密碼:"<<endl;for(i=0;i<6;i+)codi=getch();cout<<"*"MessageBox(0,"密碼位數(shù)已足","提示",MB_OK | MB_SYSTEMMODAL );cout<<endl;cout<<"請確認(rèn)一下密碼:"<<endl;char copycod7=""for(i=0;i<6;i+)copycodi=getch();cout<<"*"
38、;MessageBox(0,"密碼位數(shù)已足","提示",0);cout<<endl;if(strcmp(cod,copycod)!=0)flag+;continue;elseMessageBox(0,"恭喜!密碼輸入成功!","提示",0);break;cout<<"請輸入您的開戶金額:"<<endl;char money20=""while(1)cin>>money;if(checkmoney(money)break;else
39、cout<<"您的輸入有誤,請重新輸入:"<<endl;FILE *fp;fp=fopen("D:mybank","a");Time t=latesttime();Account temp(copyname,ID,cod,money,t);fwrite(&temp,sizeof(Account),1,fp);fclose(fp);MessageBox(0,"恭喜您!在次開戶成功!","提示",0);int jx=MessageBox(0,"您是否要查看一
40、下您的信息?","提示",1)-2;if(jx)temp.print1();over();return;4實(shí)驗(yàn)小結(jié)(實(shí)驗(yàn)遇到的問題,解決方法)1. 在getch()前有時(shí)要加入cin.get()防止上次輸入被getch()獲取2. 對密碼和帳號(hào)輸入后要在數(shù)組最后加個(gè)“”防止數(shù)組錯(cuò)誤3. 對打開文件是 有時(shí)用絕對路徑''表示實(shí)驗(yàn)項(xiàng)目三銀行儲(chǔ)蓄系統(tǒng)存款模塊設(shè)計(jì)與實(shí)現(xiàn)31庫函數(shù)描述(原型、功能、頭部文件)及其作用#include<stdio.h>/c的標(biāo)準(zhǔn)輸入輸出和文件流#include<shlobj.h>/massagebox(
41、)消息框的頭文件#include "myheaer.h"/全部調(diào)用函數(shù)#include<conio.h>/getch()從控制臺(tái)讀取一個(gè)字符,但不顯示在屏幕上32編碼(必須附加注釋)#include"myheader.H"/存款void deposit()FILE*fp;fp=fopen("D:mybank","r");if(fp=NULL)cout<<"您尚未在此開戶!"<<endl;over();return;fclose(fp);cout<<
42、"=歡迎進(jìn)入存款模塊="<<endl;cout<<"請輸入您的身份證號(hào):"<<endl;char ID20=""while(1)cin>>ID;if(checkID(ID)if(finID(ID)break;elsecout<<"您尚未在此開戶!"<<endl;over();return;elsecout<<"您的輸入有誤,請重新輸入您的身份證號(hào):"<<endl;cout<<"請
43、輸入您的存款金額: "char money20=""while(1)cin>>money;if(checkmoney(money)break;elsecout<<"您的輸入有誤,請重新輸入:"<<endl;fp=fopen("D:mybank","r+a");while(!feof(fp)Account temp;fread(&temp,sizeof(Account),1,fp);if(strcmp(temp.ID,ID)=0)fseek(fp,-sizeof(
44、Account)-1,SEEK_CUR);plus(temp.balance,money);fwrite(&temp,sizeof(Account),1,fp);break;fclose(fp);Rem r(ID,money,1,latesttime();/把ID、錢、存款、最后時(shí)間寫入 類中FILE* cfp=fopen("D:myout","ab");fwrite(&r,sizeof(Rem),1,cfp);fclose(cfp);MessageBox(0,"恭喜您存款成功!","溫馨提示",M
45、B_OK | MB_SYSTEMMODAL );over();return;33實(shí)驗(yàn)小結(jié)(實(shí)驗(yàn)遇到的問題,解決方法)1. 在帳號(hào)密碼判斷時(shí) 用了feof()是判斷文件是否結(jié)束 并每次讀取判斷直到文件結(jié)束或找到并正確實(shí)驗(yàn)項(xiàng)目四銀行儲(chǔ)蓄系統(tǒng)取款模塊設(shè)計(jì)與實(shí)現(xiàn)41庫函數(shù)描述(原型、功能、頭部文件)及其作用#include<iostream.h>/c+標(biāo)準(zhǔn)輸入輸出#include<stdio.h>/c的標(biāo)準(zhǔn)輸入輸出#include<shlobj.h>/massagebox()以警告框顯示#include "myhead.h"/全部調(diào)用函數(shù)#inc
46、lude<conio.h>/getch()從控制臺(tái)讀取一個(gè)字符,但不顯示在屏幕上42編碼(必須附加注釋)#include"myheader.H"/取款void withdraw()FILE*fp;fp=fopen("D:mybank","rb");if(fp=NULL)cout<<"您尚未在此開戶!"<<endl;over();return;cout<<"=歡迎進(jìn)入取款模塊="<<endl;cout<<"請輸入您的
47、身份證號(hào):"<<endl;char ID20=""while(1)cin>>ID;if(checkID(ID)break;elsecout<<"您的輸入有誤,請重新輸入您的身份證號(hào):"<<endl;if(!finID(ID)cout<<"您尚未在此開戶!"<<endl;over();return;char code10=""while(1)cout<<"請輸入您的密碼:"<<endl;int
48、 i;for(i=0;i<6;i+)codei=getch();cout<<"*"MessageBox(0,"密碼位數(shù)已足","提示",MB_OK | MB_SYSTEMMODAL );cout<<endl;string choose;cout<<"確認(rèn)請按1,否則請按0,請選擇:"<<endl;while(1)cin>>choose;if(choose.length()>1|choose0!='0'&&choose0!='1')cout<<"您的確認(rèn)輸入您的輸入有誤,請重新輸入:"<<endl;continue;elsebreak;if(choose0='0')continue;if(choose0='1')break;cout<<"請輸入您的取款金額: "char money20="&quo
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 投資理財(cái)服務(wù)合同范文
- 常年法律顧問合同細(xì)則
- 購房合同定金簡易協(xié)議
- 江西豐城勞動(dòng)合同范本
- 智能通風(fēng)電器具產(chǎn)業(yè)發(fā)展挑戰(zhàn)與對策考核試卷
- 機(jī)織服裝生產(chǎn)中的生產(chǎn)流程標(biāo)準(zhǔn)化考核試卷
- 塑料加工中的耐沖擊與抗跌落技術(shù)考核試卷
- 期貨市場投資者行為分析服務(wù)考核試卷
- 抽紗刺繡工藝的數(shù)字化營銷策略考核試卷
- 基于云計(jì)算的智能制造服務(wù)考核試卷
- 市政工程標(biāo)準(zhǔn)施工組織設(shè)計(jì)方案
- 馬爾文粒度儀MS2000原理及應(yīng)用
- 護(hù)理不良事件管理、上報(bào)制度及流程
- GB 9706.224-2021醫(yī)用電氣設(shè)備第2-24部分:輸液泵和輸液控制器的基本安全和基本性能專用要求
- 鋼棧橋施工與方案
- 《藝術(shù)學(xué)概論》課件-第一章
- 子宮內(nèi)膜異位癥診療指南完整課件
- 動(dòng)物寄生蟲病學(xué)課件
- 人教版小學(xué)三年級下冊數(shù)學(xué)應(yīng)用題專項(xiàng)練習(xí)題40614
- 短視頻抖音運(yùn)營培訓(xùn)課程
- 生產(chǎn)安全事故應(yīng)急預(yù)案管理辦法知識(shí)點(diǎn)課件
評論
0/150
提交評論