版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、懷化學(xué)院計(jì)算機(jī)系數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)報(bào)告書(shū)銀行排隊(duì)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)學(xué)生姓名 : 卓 勇學(xué) 號(hào): 11064020342)班年級(jí)專業(yè)及班級(jí): 2011 級(jí)計(jì)算機(jī)工程系( 指導(dǎo)老師及職稱 : 黃隆華 講師專 業(yè): 計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)湖南懷化提交日期: 2013年 6月目錄摘 要 0關(guān)鍵詞 01 前言 12 設(shè)計(jì)分析 12。1需求分析 12。2 設(shè)計(jì)意義和目的 22.3主要知識(shí)點(diǎn) 22。4整體框架 33、實(shí)現(xiàn)方法 44、調(diào)試問(wèn)題 385、系統(tǒng)的使用說(shuō)明書(shū) 386、結(jié)論 44參考文獻(xiàn) 45致 謝 45銀行排隊(duì)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)學(xué) 生:卓 勇指導(dǎo)老師:黃隆華(懷化學(xué)院計(jì)算機(jī)工程系,懷化 418008 )摘
2、要 : 隨著經(jīng)濟(jì)的快速發(fā)展,銀行的業(yè)務(wù)量逐漸增加,銀行柜臺(tái)的壓力越來(lái)越大 , 排隊(duì)等待 的現(xiàn)象也就越來(lái)越多 , 客戶在排隊(duì)中產(chǎn)生矛盾的可能性也隨之增加 , 銀行排長(zhǎng)隊(duì)現(xiàn)象成為困擾銀行 和用戶的難題 . 為了更好地服務(wù)客戶,減少排隊(duì)中不合理的現(xiàn)象,許多銀行采用了自動(dòng)取號(hào)排隊(duì)的 系統(tǒng),本課程設(shè)計(jì)設(shè)計(jì)并實(shí)現(xiàn)了銀行排隊(duì)取號(hào)的模擬系統(tǒng)。模擬了取號(hào)、排隊(duì)、服務(wù)、及管理等部 分功能,在模擬過(guò)程中用到了隊(duì)列、結(jié)構(gòu)體、文件的操作以及鏈表等知識(shí)點(diǎn)。系統(tǒng)中采用了注冊(cè)登 陸取號(hào)機(jī)制 , 有效的防止了倒票現(xiàn)象的發(fā)生,系統(tǒng)能夠記錄用戶及工作人員的相關(guān)信息,管理員通 過(guò)對(duì)用戶及工作人員信息的統(tǒng)計(jì)和分析, 可以進(jìn)一步優(yōu)化銀行
3、營(yíng)業(yè)廳的排隊(duì)問(wèn)題, 提高銀行業(yè)務(wù)辦 理效率。本文用流程圖等方式對(duì)系統(tǒng)進(jìn)行了需求分析,確定了系統(tǒng)的功能系統(tǒng)用TXT文件模擬數(shù)據(jù)庫(kù),運(yùn)用c和C+語(yǔ)言實(shí)現(xiàn)系統(tǒng)全部功能,并在最后對(duì)系統(tǒng)進(jìn)行過(guò)測(cè)試,可以保證系統(tǒng)的穩(wěn)定性 和可靠性。關(guān)鍵詞 :銀行排隊(duì)業(yè)務(wù);隊(duì)列 ;鏈表;數(shù)據(jù)結(jié)構(gòu)1 前言 數(shù)據(jù)結(jié)構(gòu)一直以來(lái)是一門比較有難度的學(xué)科,關(guān)于數(shù)據(jù)結(jié)構(gòu)的學(xué)習(xí),我認(rèn)為要學(xué) 好數(shù)據(jù)結(jié)構(gòu),要比較熟練的掌握各種基本的結(jié)構(gòu)操作 , 如二叉樹(shù),鏈表。就必須要多練 習(xí)、多實(shí)踐. 這次的課設(shè)計(jì)就是給我們提供了一個(gè)實(shí)踐的平臺(tái),可以讓我們更好的掌握 數(shù)據(jù)結(jié)構(gòu),進(jìn)一步鞏固這方面的知識(shí)。數(shù)據(jù)結(jié)構(gòu)課程作為計(jì)算機(jī)的一門關(guān)鍵課程,所 牽涉到計(jì)算機(jī)算
4、法方面的問(wèn)題是必然的,我希望通過(guò)這次課程設(shè)計(jì)的練習(xí)能讓自己在 這次的設(shè)計(jì)中有多方面的提高,能更好的掌握相關(guān)的知識(shí)。我的選題的信息描述: 根據(jù)輸入文件(銀行業(yè)務(wù)窗口信息:現(xiàn)金、非現(xiàn)金業(yè)務(wù))為客戶設(shè)計(jì)一個(gè)排隊(duì)系 統(tǒng),該系統(tǒng)以銀行業(yè)務(wù)窗口登錄后,可以提取一個(gè)號(hào)碼進(jìn)行業(yè)務(wù)處理,處理完后,可以選擇下一個(gè)號(hào)碼進(jìn)行業(yè)務(wù)處理 .普通用戶登錄后, 可以選擇所需業(yè)務(wù) ,然后抽取一個(gè)號(hào)碼作 為其業(yè)務(wù)處理序號(hào) .2 設(shè)計(jì)分析實(shí)現(xiàn)的平臺(tái)是VC6 0,所用要的語(yǔ)言是C/C+,用到的關(guān)鍵數(shù)據(jù)結(jié)構(gòu)知識(shí)是隊(duì)列與 鏈表。2。 1需求分析根據(jù)客戶辦理業(yè)務(wù)的需求,銀行設(shè)有“現(xiàn)金業(yè)務(wù)” 、“非現(xiàn)金業(yè)務(wù) ",2 種業(yè)務(wù)的辦 理
5、。本程序?qū)⒏鶕?jù)客戶選擇要辦理的業(yè)務(wù)類型,等候辦理業(yè)務(wù)的客戶進(jìn)行隊(duì)伍編排 . 操 作員處理各種業(yè)務(wù),控制每位客戶的業(yè)務(wù)辦理時(shí)間。管理員可以查看、添加、修改、 刪除操作員信息,還可以查看業(yè)務(wù)的詳情 , 操作員業(yè)績(jī)等,管理員中設(shè)有超級(jí)管理員, 比一般管理員增加了對(duì)一般管理的添加、查看、修改、刪除等功能。1、 客戶注冊(cè)自己的永久性登陸賬號(hào), 然后再登陸系統(tǒng)選擇要辦理的業(yè)務(wù)類型 , 取 號(hào)排隊(duì),程序會(huì)把當(dāng)前隊(duì)列中的信息存放在 .txt 文件中。2、操作員登錄進(jìn)入系統(tǒng), 操作員會(huì)根據(jù)窗口的不同優(yōu)先對(duì)不同類型的業(yè)務(wù)類型信 息進(jìn)行處理,每處理完一個(gè)號(hào)碼,系統(tǒng)記錄當(dāng)前已處理的信息,辦理業(yè)務(wù)的時(shí)間由操 作員控制。
6、3、管理員登錄進(jìn)入系統(tǒng), 可以查看業(yè)務(wù)的詳情 , 操作員業(yè)績(jī) , 對(duì)操作員進(jìn)行管理等 功能。2.2 設(shè)計(jì)意義和目的 銀行排隊(duì)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)是一個(gè)實(shí)際運(yùn)用性非常強(qiáng)的系統(tǒng),是針對(duì)銀行特點(diǎn)專 門研制開(kāi)發(fā)出的、適用于各銀行的理想的客戶解決方案。該系統(tǒng)可以根據(jù)客戶的流量 即時(shí)調(diào)整工作人員及服務(wù)窗口的數(shù)量,最大程度減少客戶等候時(shí)間,很好地解決客戶 在接受服務(wù)過(guò)程中所遇到的各種排隊(duì)、等候、擁擠和混亂現(xiàn)象.同時(shí)也能統(tǒng)計(jì)客戶情況及職員的工作狀況,為企業(yè)管理層提供有效的管理手段和決策依據(jù)。使用銀行排隊(duì)系統(tǒng) ,一方面可消除用戶長(zhǎng)時(shí)間 “站隊(duì)”的辛苦、對(duì) “站錯(cuò)隊(duì)"、“插隊(duì) 的抱怨,避免發(fā)生排錯(cuò)隊(duì)和混亂嘈
7、雜的現(xiàn)象,減少許多不必要的糾紛,全面改善服務(wù) 質(zhì)量和企業(yè)形象,另一方面更可以依據(jù)統(tǒng)計(jì)數(shù)據(jù)調(diào)整業(yè)務(wù)分配、挖掘潛力、合理安排 窗口服務(wù) ,減少群眾的等候時(shí)間,提高辦事效率 .2。3 主要知識(shí)點(diǎn) 銀行排隊(duì)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)主要用到的數(shù)據(jù)結(jié)構(gòu)知識(shí)點(diǎn)是隊(duì)列與鏈表,隊(duì)列先進(jìn) 先出的特點(diǎn)剛好符合現(xiàn)實(shí)中排隊(duì)的特點(diǎn),鏈表是用來(lái)存放客戶的信息 .下面是我要用到的隊(duì)列與鏈表的定義 :typedef struct LNode/鏈表定義ywdetails data1;zcxx data;LNode *next; LNode,* Lin kList;typedef struct QNode/隊(duì)列定義int data;QNo
8、de * next;*QueuePtr;struct LinkQueueQueuePtr front, rear;2。4整體框架主界面客操 作 員 界 面管 理 員 界 面r登陸1IJ客戶注冊(cè)rLJ退出LJ超 級(jí) 管 理 員1、現(xiàn)金業(yè)務(wù)f 1處理現(xiàn)金業(yè)務(wù)2、非現(xiàn)金業(yè)務(wù)2、處理非現(xiàn)金業(yè)3、修改密碼務(wù)4、返回3、返回0、退出0、退出1官理操作員信息2、查看業(yè)務(wù)詳情3、查看某天的業(yè)務(wù)4、查看操作員業(yè)績(jī)5、返回0、退出2、3、4、5、6、管理一般管理員 管理操作員信息 管理客戶信息 查看業(yè)務(wù)詳情 查看某天的業(yè)務(wù) 查看操作員業(yè)績(jī) 返回 0、退出本數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)利用數(shù)據(jù)結(jié)構(gòu)中隊(duì)列的知識(shí),用C語(yǔ)言實(shí)現(xiàn)了先
9、來(lái)先服務(wù)的思想。3、實(shí)現(xiàn)方法有了需求分析 ,就需要具體的實(shí)現(xiàn)。首先是主界面的現(xiàn)實(shí),主界面可以寫(xiě)在主函數(shù) 中,但是為了方便后面的函數(shù)調(diào)用,主界面我用了一個(gè)獨(dú)立的函數(shù)來(lái)書(shū)寫(xiě),主界面上 顯示歡迎的光臨等歡迎話語(yǔ),和登陸、注冊(cè)、退出程序的功能功能選擇按鈕,在輸入 按鈕時(shí),我采用 string 類型的字符串, 雖然采用 string 類型的字符串在判斷功能選擇時(shí) 增加了代碼的量 ,但是它可以有效的對(duì)用戶不小心輸入多個(gè)字符時(shí)情況的處理 .下面是我的主界面函數(shù):void show()/ 歡迎界面窗口 system("cls”);string n; printf("n ”); printf
10、 ("n ”); printf( ”* * * * * * * * * * * * * * *printf* * * * * * * * * * * * * * * n”);printf*n");printf *n ”);printf( ” *n ”);歡迎光臨,工商銀行 !printf("* n”);printf*n") ;2:注冊(cè)printf ("* 0:退出*n");printf(" * n”);printf( ”* * * * * * * * * * * * *n ”、1:登陸printf* * * * * * *
11、*?k * -k * * * * * *”printf("* * * * * *n”);printf (”請(qǐng)輸入您的選擇:n");printf (”);cin n;if (n = "0")輸入“ 0"退出程序exit ( 0);else if ( n = ”1")輸入“1”進(jìn)入登陸界面Longln();else if (n = ” 2")輸入“ 2”進(jìn)入注冊(cè)界面Sig nln ();else輸入有誤printf您的輸入有誤! n");_sleep(1000);show();來(lái)到主界面后,用戶要使用本系統(tǒng)就需要先進(jìn)行
12、注冊(cè),然后再登陸來(lái)使用系統(tǒng)的 相應(yīng)功能。在進(jìn)入到注冊(cè)界面時(shí),我先詢問(wèn)了用戶是否確定進(jìn)行注冊(cè),并設(shè)置了返回 按鈕,可以方便用戶不小心按錯(cuò)之后返回主界面來(lái)選擇他(她)想要使用的功能.在用戶輸入用戶名后,我先把現(xiàn)有的注冊(cè)信息從文件存儲(chǔ)進(jìn)鏈表中,用來(lái)判斷輸入的用戶名 是否已經(jīng)有人用了,解決了用戶名不能重用的問(wèn)題。在密碼輸入時(shí)采用了加密程序,防止 了密碼的外泄.F面是密碼輸入的保護(hù)程序:F面是實(shí)現(xiàn)注冊(cè)功能的函數(shù):stri ng password () /密碼輸入顯示*的 保護(hù)模式輸入函數(shù)char c;int i=0;stri ng pas;while (c=getch() !=' r')
13、if (c='b') /處理退格鍵putch(c);putch ('');putch(c);if (!pas.empty()pas=pas.eras(pas。size()-1,1);else if (isprint (c) )/只用可顯示字符做密碼putch (' *');pas+=c;cout < en dl;/cout<pasendl;/自己輸出進(jìn)行測(cè)試用的retur n pas; void Signln ()/注冊(cè)函數(shù)基本完 成。system ("cis”); 清屏printf ("0:返回上一級(jí)菜單k -k
14、* n”)printf (n");intn, i, k;/k 標(biāo)記,0表示用戶名還沒(méi)有注冊(cè)過(guò),1表示用戶名 已被注冊(cè)string m;/ m 為“ 0”返回上一級(jí)菜單stri ng pwd;用來(lái)存放返回的輸入的密碼char kh_name 40 ;/存放輸入的 用戶名一char kh_pwd40; 存放輸入的密 碼Lin kList L;/定義鏈表L =(LinkList)malloc (sizeof(LNode) ;/給鏈表初始化if (!L)exit(0);L next = NULL ;printf ("* *n ”);printf("* * * * * *
15、* * * * * * n”);printf("* * * * * * * * * * n")printf (” 請(qǐng)輸入您的選 擇:n”);printf("-");printf("n"); printf (”* * n * * * * * * * *、n ”).printf("* * * * * * * * * * * * * * * * * * * * * * * * * * *nnAprintf("*n");printf(”* * n");printf("1:繼續(xù)注冊(cè)操作* * *
16、 n");printf (”* * n");printf ("*n ”);cin> m;if (m = "0 ”)輸入 “0”返回上一級(jí)菜單show ();else if (m = "1”)/輸入“ 1” 繼 續(xù)注冊(cè)操作printf (” 請(qǐng)輸入您 的用戶名(120字以內(nèi),不能有空格): n");printf("f");cin >> kh_name; /從控制臺(tái)輸入用戶名一k = 0;ifstream ci nFile;/ 打開(kāi)文件, 從文件中讀取數(shù)據(jù)ci nFile.ope n("客戶
17、注冊(cè)信息。txt ”);if (! cinFile。is_open。)當(dāng)文件打開(kāi)失敗是提示檢修系統(tǒng)printf打開(kāi)文件失?。?,請(qǐng)檢修系統(tǒng) n");ci nFile > n;表示當(dāng)前已有注冊(cè)人數(shù)/*當(dāng)客戶輸入用戶名后,判斷是否此用戶名是否已被注冊(cè),k = 0表示 此用戶名可用,k=1表示此用戶名已經(jīng)被 注冊(cè)過(guò),不可用* /Lin kList p;P = L;for (i = 1 ; i <= n ;i+)LinkList q ;q =(LinkList)malloc(sizeof (LNode);q-next = pnext;cinFile>q->data.na
18、me q->data。pwd;if (strcmp (kh_name, c>) = 0)k = 1;break;p->n ext = q;p = q;cinFile。 close ();if (k = 1)prin tf(” 您輸入的用戶名已存在. n");_sleep(200C);Signln(); /當(dāng)用戶名不可用時(shí),重新跳轉(zhuǎn)到注冊(cè)界面 if (k ! = 1)printf ("請(qǐng)輸入密碼(120字以內(nèi)不能有空格):n”);提 醒注冊(cè)客戶輸入密碼printf ("f );pwd = password ();for (i =
19、0; i pwd。length () ; i+)kh_pwdi = pwdi; _kh_pwdi= ' 0';/*打開(kāi)文件,并修改當(dāng)前已有注冊(cè)人數(shù),添加現(xiàn)在在注冊(cè)的用戶*/ofstream coutFile;coutFile。 open(” 客戶注 冊(cè)信息。txt");if (!coutFile.is_open () prin tf(” 打 開(kāi)文件失敗!,請(qǐng)檢修系統(tǒng) n");coutFile < n+1 << endl; coutFile < kh_name"t” kh_pwd << endl;L = L-nex
20、t;while (L)/cout << L> ” t” << L->data。pwd < en dl; 自己測(cè)試用過(guò)coutFile << L- < < ” t" < < L->data.pwd << en dl;L = L- > next;/ cout << kh_name << "t” << kh_pwd < < en dl;/ 自己測(cè)試用過(guò)coutFile.close ();prin
21、tf (" 注冊(cè)成功! n") ;/ 提示注冊(cè)成功,_sleep (2000);Longln (); /注冊(cè)成功, 調(diào)轉(zhuǎn)到登陸界面else輸入有誤printf ("您的輸入有 誤! n”);_sleep( 1000); Signln ();在注冊(cè)完成后就進(jìn)入登陸界面,同樣登陸界面也會(huì)詢問(wèn)用戶是否確定登陸,并設(shè) 有返回上一級(jí)菜單的按鈕,以防止用戶不小心按錯(cuò)時(shí)可以返回上級(jí)菜單重新選擇功能。 此系統(tǒng)為了體現(xiàn)排隊(duì)的公平,沒(méi)有設(shè)置 VIP用戶,在登陸成功后就進(jìn)入了業(yè)務(wù)選擇接 界面,用戶可以根據(jù)自己所辦理業(yè)務(wù)的不同選擇不同的業(yè)務(wù),進(jìn)入不同的隊(duì)列中取號(hào) 進(jìn)行排隊(duì),為了更人化沒(méi)更
22、為用戶考慮,在不同的業(yè)務(wù)類型中還增添了查看排隊(duì)詳情 和查看自己當(dāng)前的排隊(duì)位置的功能F面是現(xiàn)金業(yè)務(wù)功能函數(shù):void CashBusi nes$)客戶所使用的現(xiàn) 金業(yè)務(wù)system cls"); /清屏 stri ng c,c1;Li nkQueue Q1;/ 定義隊(duì)列Q1Queueci nF ile(Q1, 1); 調(diào)用 Q1 的文件打開(kāi),創(chuàng)建隊(duì)列Q1* * n");printf("* *n");printf("2:取號(hào)排隊(duì)* * * n");printf('* n”);printf('3:查看您排隊(duì)所在的位置prin
23、tf("n"); printf (”* * * * * * */選擇業(yè)務(wù)界面* * * * * * * * * *n")* * * *n")printf(”* * *printf (* *n ”);printf("現(xiàn)金業(yè)務(wù)當(dāng)前排隊(duì)人數(shù):”);prin tf("%d當(dāng)前排隊(duì)人數(shù)printf (”*n ”);printf (”1:查看排隊(duì)詳情,QueueLength(Q1);*printf ("* *n ”);printf(”4:返回上一級(jí)菜單*n");printf("* * n”);printf (&quo
24、t;0:退出登錄*n ”);printf("*n");printf(”* * * y* * * * * n”printf("* * * * * * *卄*);* * * *衣 n”);(” 請(qǐng)輸入您的選F面是非現(xiàn)金業(yè)務(wù)功能函數(shù):* * * * * * * *printf 擇:n");printf cin c;if ( c = "0 ”)/現(xiàn)金業(yè)務(wù)主界面 輸入” 0 “退出登錄,放回主界 面 show ();else if (c = "1")/ 現(xiàn)金業(yè)務(wù)主界面輸入” 1 “查看排隊(duì)詳情L(zhǎng)ookCashDetails ();el
25、se if (c = ” 2”)現(xiàn)金業(yè)務(wù)主界面輸入” 2 “取號(hào)排隊(duì)prin tf(”確定取號(hào)?【0(不取號(hào))/1(取號(hào))】 n");printf ("請(qǐng)輸入您的選擇:n”);printf ("-");cin > c1;if (c1 = "0")輸入“0”不取號(hào)CashBusiness();else if (c1 = "1”)輸入“ 1”取號(hào)CashNumberList ();else/ 選擇輸入有誤printf (” 您的輸 入有誤! n");_sleep (1000); CashBusiness();el
26、se if (c = "3”)/現(xiàn)金業(yè)務(wù)主界面 查看客戶做在的位置int e;printf (" 請(qǐng)輸入您的號(hào)碼:n")J-");printf ("cin> e;if (e < Q1。front>next->data | e > Q1。rear->datO>printf (” 您的輸入有誤! n”);_sleep (1000);CashBusiness(;elseCashLookLocati on( e);else if (c = "4")/ 現(xiàn)金業(yè)務(wù)主界面輸入"3 “返回
27、上一級(jí)菜單SelectBus in ess();else現(xiàn)金業(yè)務(wù)主界面輸入有誤prin tf(” 您的輸入有 誤! n");_sleep(1000 ;CashBus in ess();void No nCashBusi ness() 客戶所使用 的非現(xiàn)金業(yè)務(wù)system (” cis"); /清屏stri ng c,c1;Lin kQueue Q2;/ 定義隊(duì)列Q2Queueci nF ile(Q2,2);調(diào)用Q2的文件打開(kāi),創(chuàng)建隊(duì)列Q2printf("n");/選擇業(yè)務(wù)界面 printf (”* * * * * * * * * * * * * * *4
28、:返回上一級(jí)菜單*n ”);printf (”* * *n");printf ("0:退出登錄* * * n”);printf (”* * n”);printf ("* * * * * * * * * * * * n”);* * * * * * * * * * * * * * * * * *printf("* * * * * n”);* * * * * * * *printf (”* * * * * * * * * * a * * * *n")* 卄 * * * *n");printf請(qǐng)輸入您的選擇:n");printf(&
29、quot;cin c;printf("*n");printf(”非現(xiàn)金業(yè)務(wù)當(dāng)前排隊(duì)人數(shù):printf (” %d", QueueLength(Q2) ;/當(dāng)前排隊(duì)人數(shù)printf("*n ”);printf (”1:查看排隊(duì)詳情* * * n”);printf ("* n”);printf("2:取號(hào)排隊(duì)if (c = "0")/ 非現(xiàn)金業(yè)務(wù)主界面 輸入” 0 “退出登錄,放回主 界面show ();else if (c = ” 1")/ 非現(xiàn)金業(yè)務(wù)主界面輸入” 1 “查看排隊(duì)詳情L(zhǎng)ookNonCashD
30、etails ();* * n");printf(”* n”);printf ("3:查看您排隊(duì)所在的位置* 衣 n");printf (II* * *n");printf (IIelse if (c = "2")/ 非現(xiàn)金業(yè)務(wù)主界面輸入” 2 “取號(hào)排隊(duì)printf (”確定取號(hào)?【0(不取號(hào))/1(取號(hào))】 n” );prin tf(” 請(qǐng)輸入您的用戶再排隊(duì)取號(hào)之后就可以坐在銀行大廳等待了。 此時(shí)用戶可以處理自己的事情, 只要在叫到他(她)的號(hào)時(shí)去便利業(yè)務(wù)就行。與此同時(shí)操作員選擇操作員身份登陸同一 套系統(tǒng),對(duì)隊(duì)列中的號(hào)碼進(jìn)行處理,
31、操作員在登陸時(shí)會(huì)輸入登陸的窗口號(hào),銀行可以更具具體的窗口情況來(lái)設(shè)定具體那些窗口來(lái)優(yōu)先處理現(xiàn)金業(yè)務(wù)(或非現(xiàn)金業(yè)務(wù)),操作員登陸之后可以看到不同業(yè)務(wù)在排隊(duì)的情況,操作員在優(yōu)先處理完本窗口業(yè)務(wù)后可以幫 助其他操作員處理其它類型的業(yè)務(wù),實(shí)現(xiàn)了在處理不同業(yè)務(wù)之間的良性循環(huán),操作員處 理完一個(gè)用戶時(shí),系統(tǒng)會(huì)記錄操作員的名字,處理業(yè)務(wù)所花時(shí)間,時(shí)期,處理的號(hào)碼等記 錄,銀行管理層可以根據(jù)存儲(chǔ)的記錄來(lái)查看操作員的業(yè)績(jī)、效率等信息??梢越o管理 著在制定相關(guān)制度是提供參考.下面是操作員處理現(xiàn)金業(yè)務(wù)函數(shù)功能函數(shù):void DealwithCash(char czy_name|,in t ckh)/操作員處理現(xiàn)金業(yè)務(wù)
32、界面system("cls”);選擇:n” );printf(”一");cinc1;if (c1 = "0")輸入“0”不取號(hào)Non CashBus in ess(; else if( cl = "1")輸入“ 1”取號(hào)Non CashNumberList(); else選擇輸入有誤printf ("您的輸 入有誤! n");_sleep (1000);Non CashBus in ess();else if (c = ” 3” )/非現(xiàn)金業(yè)務(wù)主 界面 查看客戶做在的位置int e;prin tf(” 請(qǐng)輸入您的號(hào)
33、碼:n");printf("一");cin e;if (e < Q2。front next data | | e Q2。rear >data)printf(” 您的輸 入有誤! n");_sleep (1000); Non CashBus in ess ();elseNon CashLookLocati on( e);else if (c = ” 4")/ 非現(xiàn)金業(yè)務(wù)主界面輸入” 4 “返回上一級(jí)菜單SelectBusi ness();else非現(xiàn)金業(yè)務(wù)主界面輸入有誤printf (” 您的輸入有誤! n");_sleep
34、 (1000);Non CashBus in ess);stri ng c, c1;char ywlx 64=)現(xiàn)金業(yè)務(wù)” time_t sec ond, first;時(shí)間Li nkList L;/ 定義鏈表char date 64;日期char tim 64;時(shí)間int n, m ; int temp;存放時(shí)間差int e;存放對(duì)頭數(shù)字,既要處理的數(shù)據(jù)Lin kQueue Q1 ;Q1現(xiàn)金業(yè)務(wù)當(dāng)前排隊(duì)隊(duì)列first = time ( 0);調(diào)用系統(tǒng)時(shí)間strftime(date, sizeof(date),” Y/%m/ % d”,localtime(&first);strftime
35、 (tim, sizeof (date),"%Y/ % m/% d/% X/%A",localtime(&first);/ cout < date < endl;QueuecinFile (Q1,1);創(chuàng)建隊(duì)列Q1,打開(kāi)文件“Q1隊(duì)列。txt”m = Q1.frontnext-data;printf("nn ”); printf n");printf (” nn");printf ("當(dāng)前時(shí)間:% sn", tim);printf(” n”);printf("正在處理的號(hào)碼 :%dn"
36、,m);printf ("n”);printf (1:處理完成n”);printf (” n”);printf ("0:返回上一級(jí)菜單n”);printf(” nnn");printf n");printf請(qǐng)輸入您的選擇:n");printf ("T);cin> c;if (c = "0")/ 返回上一級(jí)菜單OperatorChose (czy_n ame, ckh);else if (c =)1")/ 處理完成printf (" 您確定處理完畢?【0(否)/ 1 (是)】 n"
37、);printf (”請(qǐng)輸入您 的選擇:n”);printf ()t ");cin >> c1 ;if (c1 = "0)/沒(méi)有處理完畢DealwithCash( czy_n ame, ckh);else if (c1 =)1")/確定處理完畢QueuecinFile (Q1, 1);創(chuàng)建隊(duì)列Q1,打開(kāi)文件“Q1隊(duì)列。txt"/ cout << czy_n ame << ")<< ckh < endl;自己測(cè)試用過(guò)DeQueue(Q1, e);/ cout vvQ1。front data&l
38、t; " )< e endl;自己測(cè)試用過(guò)/ PrintQueue(Q1);自己測(cè)試用過(guò)QueuecoutFile(Q1,1);L =(LinkList) malloc(sizeof (LNode);/給鏈表初始化 if ( !L) exit ( 0);L-next = NULL ; cinFileywDetail(L, n ); second = time( 0);temp = difftime(seco nd, first) / 60;/ 時(shí)間差(單位分鐘)coutFileywDetail ( L, n, czy_n ame, ckh, e, temp, ywlx, dat
39、e, tim);OperatorChose(czy_ name, ckh);else /輸入錯(cuò)誤printf (” 您的輸 入有誤! n");_sleep(1OO0);DealwithCash(czy_ name ckh);else輸入有誤printf (" 您的輸入有誤! n");_sleep (1000);DealwithCash(czy_ name ckh);F面是操作員處理非現(xiàn)金業(yè)務(wù)功能函數(shù):void DealwithN on Cash(char czy_n ame 口,int ckh)/操作員處理非現(xiàn)金業(yè)務(wù)界面"system ("cl
40、s");stri ng c,c1;char ywlx 64=”非現(xiàn)金業(yè)務(wù)time_t sec ond,first ;時(shí)間LinkList L ;/定義鏈表char date 64;日期char tim 64;/時(shí)間intn, m; int temp;存放時(shí)間差int e;/存放對(duì)頭數(shù)字,既要處理的數(shù)據(jù)Lin kQueue Q2;/Q1現(xiàn)金業(yè)務(wù)當(dāng)前排隊(duì)隊(duì)列first = time(0);調(diào)用系統(tǒng)時(shí)間strftime(date, sizeof (date),"%Y/%m/ % d", localtime( & first);strftime(tim, size
41、of(date) , "% Y/%m/%d/ % X/ % A ”,localtime(&first );QueuecinFile (Q2,2);創(chuàng)建隊(duì)列Q1,打開(kāi)文件“ Q1隊(duì)列.txt”m = Q2.frontnext->data;printf ("nn");printf (" n”);printf (” nn");printf ("當(dāng)前時(shí)間:sn", tim); printf (” n"); printf(”正在處理的號(hào)碼:dn” , m);printf (” n”); printf(”1:處理
42、完成n");printf("n"); printf("0:返回上一級(jí)菜單n”);printf (” nnn” ); printf n"); printf請(qǐng)輸入您的選擇:n");printf(”-");cin c;if (c = ” 0”)/返回上一級(jí)菜單OperatorChose (czy_n ame, ckh);else if (c = ” 1")/ 處理完成prin tf(” 您確定處理完畢?【0 (否)/ 1(是)】 n"); printf ("請(qǐng)輸入您的 選擇:n”);printf(”-
43、");cin >> c1;if (c1 = "0")/沒(méi)有處理完畢DealwithNo nCash(czy_name, ckh);else if (c1 = "1")/確定處理完畢QueuecinFile (Q2,2);創(chuàng)建隊(duì)列Q1,打開(kāi)文件“Q1隊(duì)列。txt”/ cout czy_name”"<ckh < endl;自己測(cè)試用過(guò)DeQueue (Q2,e);/ cout < Q1.front>data < " " e endl;自己測(cè)試用過(guò)/ PrintQueue (Q1
44、);自己測(cè)試用過(guò)QueuecoutFile (Q2, 2);L = (LinkList ) malloc(sizeof (LNode);給鏈表初始化if (!L)exit(0);L > next = NULL ;ci nFileywDetail(L, n);second = time (0); temp = difftime(seco nd, first) / 60 ;/ 時(shí)間差(單位分鐘)coutFileywDetail ( L, n, czy_n ame,ckh, e, temp, ywlx, date,tim);OperatorChose(czy_ name, ckh);elsep
45、rintf(” 您的輸 入有誤! n”);_sleep(1000);DealwithNonCash(czy_name, ckh ; _else輸入有誤 printf (” 您的輸入 有誤! n”);_sleep (1000);DealwithN on Cash(czy_ nameckh);操作員功能基本實(shí)現(xiàn)后就是管理員的功能了,管理員中設(shè)有超級(jí)管理員和一般管 理員,超級(jí)管理員與一般管理員共有的功能有管理客戶信息、查看業(yè)務(wù)的詳情、查看 操作員的業(yè)績(jī)、查看某天的業(yè)務(wù)功能超級(jí)管理員增加的功能有管理一般管管理員信息、 管理客戶信息功能。(其中管理信息包括查看、刪除、修改、添加)F面是管理一般管理員的功
46、能函數(shù):void glybma neger()/ 管理一般管理員system("cls”); /清屏stri ng str, strl, pwd; int n, i, j, k = 0; zcxx *longin ; char name 40; char passd 40;ifstream ci nFile;cin File.ope n(”管理員注冊(cè)信 息.txt");cinFile n;從文件中讀取現(xiàn)有管理員個(gè)數(shù)longin = new zcxx n+2;for (i = 1; i <= n; i+)ci nFile longin i. name >>
47、longin i.pwd ;cin File.close();printf (” n” ); printf (”* * * * * * * * * *n ”).printf("* * * * * * * * a * * * * * * *n");printf (* -k* *n");printf ("* *n ”);printf("1:查看所有管理員* n");printf ("* n”);printf ("2:刪除一般管理員* *n ”);printf (”* *n”);printf (”3:修改管理員密碼* *
48、 n");printf ("*n");printf("4:添加一般管理員*n ”);printf(”* n");printf (”5:返回上一級(jí)菜單* *n");printf (”* *n ”);printf (”0:退出登錄* * n");printf(”* * *n ”);printf(”* * *衣*衣n");printf("* * * * * * * * * * * * * 未 * 未 * * * 未 * 未 * 未* * * n ”.printf (” 請(qǐng)輸入您的選擇:n");prin
49、tf ("一");cin >str;if (str = "0 ” )/退出登錄show ();else if (str = "1")/ 查看所有管理員system ("cls”);/清屏printf(” n");printf("探 探 探n");printf("%-20s% -20sn” 用戶名:” ”密碼:”;for (i = 1; i = n ;i+)printf (”%-20s%-20sr” longini .name, longini。 pwd);printf(” n");printf ("探 探 探n");printf(” n”;printf ("1:返回上一級(jí)菜單n”);printf ("n”;printf(”0:退出登錄n”);printf (” n” );printf(&qu
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 信訪調(diào)解協(xié)議書(shū)
- 2025版住宅小區(qū)消防疏散指示標(biāo)識(shí)安裝合同范本3篇
- 2025年度個(gè)人股權(quán)擔(dān)保貸款合同標(biāo)準(zhǔn)版
- 2025版托老院入住老人安全防護(hù)服務(wù)協(xié)議3篇
- 2025-2030全球1-戊基-1H-吲哚行業(yè)調(diào)研及趨勢(shì)分析報(bào)告
- 2025-2030全球電子纖維鼻咽鏡行業(yè)調(diào)研及趨勢(shì)分析報(bào)告
- 行業(yè)透視對(duì)公業(yè)務(wù)市場(chǎng)細(xì)分與行業(yè)特性
- 二零二五年度廚師勞務(wù)派遣及餐飲企業(yè)員工福利協(xié)議4篇
- 二零二五年度車輛抵押貸款利率調(diào)整與通知合同3篇
- 二零二五年度菜鳥(niǎo)驛站快遞業(yè)務(wù)快遞員招聘與管理協(xié)議3篇
- 江西省部分學(xué)校2024-2025學(xué)年高三上學(xué)期1月期末英語(yǔ)試題(含解析無(wú)聽(tīng)力音頻有聽(tīng)力原文)
- 農(nóng)民工工資表格
- 【寒假預(yù)習(xí)】專題04 閱讀理解 20篇 集訓(xùn)-2025年人教版(PEP)六年級(jí)英語(yǔ)下冊(cè)寒假提前學(xué)(含答案)
- 2024年智能監(jiān)獄安防監(jiān)控工程合同3篇
- 2024年度窯爐施工協(xié)議詳例細(xì)則版B版
- 幼兒園籃球課培訓(xùn)
- 基底節(jié)腦出血護(hù)理查房
- 工程公司總經(jīng)理年終總結(jié)
- 【企業(yè)盈利能力探析的國(guó)內(nèi)外文獻(xiàn)綜述2400字】
- 統(tǒng)編版(2024新版)七年級(jí)《道德與法治》上冊(cè)第一單元《少年有夢(mèng)》單元測(cè)試卷(含答案)
- 蘇教版(2024新版)一年級(jí)上冊(cè)科學(xué)全冊(cè)教案教學(xué)設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論