c設(shè)計報告最終成品_第1頁
c設(shè)計報告最終成品_第2頁
c設(shè)計報告最終成品_第3頁
已閱讀5頁,還剩46頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、目錄1設(shè)計內(nèi)容、任務(wù)及基本要求1.1設(shè)計內(nèi)容1.2設(shè)計任務(wù)1.3設(shè)計基本要求2總體設(shè)計思路2.1系統(tǒng)功能2.2各個模塊之間的主要關(guān)系2.3總體程序框圖2.4系統(tǒng)的總體流程圖3功能模塊的具體設(shè)計3.1 main()函數(shù)模塊3.2銀行賬戶和密碼信息函數(shù)模塊3.3儲戶身份證驗證3.4進入服務(wù)主頁函數(shù)3.5選擇服務(wù)種類3.6退出服務(wù)程序,結(jié)束4功能模塊的調(diào)試與測試4.1主菜單運行界面4.2查詢服務(wù)項目選擇模塊運行界面4.3查找用戶信息模塊運行界面4.4開戶信息模塊運行界面4.5銷戶信息模塊運行界面4.6結(jié)束服務(wù)模塊信息運行界面5總結(jié)6程序清單1.設(shè)計內(nèi)容、任務(wù)以及基本要求1.1設(shè)計內(nèi)容主要利用c語言的

2、文件操作能力設(shè)計開發(fā)一個小型的銀行儲蓄模擬系統(tǒng),至少具有如下功能:查詢所有儲戶的信息,通過輸入賬號、密碼來完成查詢某一位 儲戶的信息,開戶信息、掛失信息、注銷信息以及利用儲戶賬號密碼實現(xiàn)存取款、 轉(zhuǎn)賬等一系列的銀行業(yè)務(wù)。操作界面要符合用戶的一般習(xí)慣,界面易于讀者明白 理解,圖形或文本界面都可以。1. 2設(shè)計任務(wù)要求:明確課程設(shè)計的目的,能根據(jù)課程設(shè)計的要求,查閱相關(guān)文獻,為完成設(shè) 計準備必要的知識;提高學(xué)生用高級語言進行程序設(shè)計的能力,重點提高用C語言進行文件操作和繪圖應(yīng)用的編程技術(shù)水平;初步了解軟件開發(fā)的一般方法和 步驟;提高撰寫技術(shù)文檔的能力。掌握模塊化編程的基本方法與步驟;鞏固和 加深學(xué)

3、生對C語言課程基本知識的理解與掌握,培養(yǎng)學(xué)生利用 C語言進行軟件操作的能力和技巧。幫助學(xué)生更好地理解和學(xué)習(xí)C語言。1.3基本要求(1) 通過提示菜單選擇可以進行的操作。(2) 將儲戶個人的信息存入文件中,并命名為 stdio.h。(3) 將存儲情況的信息存入文件中,并命名為 stdlib.h。(4) 將查詢業(yè)務(wù)的信息存入文件中,并命名為 stri ng.h。(5) 在本系統(tǒng)中可以進行管理系統(tǒng)包含的基本操作,其中包括a) 顯示所有賬戶,查詢所有儲戶的基本信息。b) 查詢余額,輸入賬號密碼即可顯示出該儲戶的賬戶余額。c) 存取款管理。輸入儲戶正確的賬號密碼即可辦理存款或取款業(yè)務(wù),如果取 款額大于賬

4、戶余額,則提示該賬戶余額不足。d) 注銷一位用戶的基本信息,通過輸入該用戶的賬號密碼,首先查找是否存 在該用戶的賬戶信息,如果存在則將該用戶信息刪除,否則給出提示信息,提示 重新輸入或者退出此程序,回到主頁面。e) 轉(zhuǎn)賬。首先必須輸入該儲戶的賬號密碼,輸入正確后方可輸入對方賬號和轉(zhuǎn)賬金額,才能完成轉(zhuǎn)賬,如果余額不足,系統(tǒng)會給出相應(yīng)的提示。(6) 儲戶個人信息包括賬號、密碼、身份證號、儲種、地址、開戶日期。(7) 儲戶個人信息文件中每一行存放一位儲戶的信息。(8) 將顯示存儲信息文件中的每一位儲戶的賬戶余額。2總體設(shè)計思路2.1系統(tǒng)功能銀行儲蓄管理在生活中運用非常廣泛,因此需要用許多的程序來對它

5、們進行管理。此程序包含了開戶人信息的錄入、 儲戶信息的瀏覽、儲戶的的注銷和掛失、 余款查詢、存取款、轉(zhuǎn)賬等。通過編譯一個C語言函數(shù),其中包含一個主函數(shù), 多個子函數(shù),主函數(shù)調(diào)用其余的子函數(shù)實現(xiàn)人們能夠簡易、快捷的了解并找到 自己所學(xué)要的信息的功能。1、開戶:根據(jù)系統(tǒng)提示依次正確的填寫賬號、密碼、本人正確的信息 等。2、顯示所有賬戶:將所有賬戶信息包括賬號、儲種、余額、開戶日 期、等顯示在屏幕上3、存款:通過輸入賬號密碼來確認賬戶是否存在,然后輸入存款金額, 如果顯示賬戶與密碼不匹配,請選擇繼續(xù)輸入或者退出,如果三次都 未正確的輸入賬號密碼,則強制退出。4、查詢余額:通過輸入儲戶的賬戶密碼,查看

6、該儲戶的賬戶余額。5、取款:通過輸入賬號密碼判斷賬戶是否存在,然后再輸入所需金額, 所取金額必須小于等于該賬戶現(xiàn)余額。6、轉(zhuǎn)賬:通過輸入賬號密碼判斷賬戶是否存在,然后再輸入對方的賬 號,完成后方可輸入轉(zhuǎn)賬金額,次金額必須小于等于該賬戶現(xiàn)余額。7、修改密碼:通過輸入舊賬號密碼,判斷此賬戶是否存在,存在即可輸入新密碼,若不存在則提示用戶重新輸入。& 掛失:如若銀行卡丟失,通過輸入賬號密碼掛失,鎖定該賬戶9、銷戶:通過輸入賬號密碼撤銷賬戶。10、撤銷掛失:通過輸入賬號密碼撤銷因損壞、丟失等原因所掛失的賬 戶。11、查看儲戶個人信息:通過輸入賬號密碼完成個人賬戶信息的查找, 并在屏幕上顯示。1

7、2、查看利率表:通過輸入相應(yīng)的序號查詢相關(guān)的利息。13、儲戶須知:通過輸入相應(yīng)的序號查詢相關(guān)的信息14、幫助:通過輸入相應(yīng)的序號查詢相關(guān)信息0、退出程序:返回主頁面。注:賬號密碼的輸入只有三次機會,否則強制返回到主菜單。2.2各個模塊之間的主要關(guān)系銀行儲蓄管理系統(tǒng)可劃分為8個模塊:開戶模塊、存款模塊、取款模塊、轉(zhuǎn) 賬模塊、余額查詢模塊、掛失模塊、銷戶模塊、儲戶個人信息模塊、儲戶須知模 塊。各模塊之間均有著或多或少的聯(lián)系, 比如:通過查詢余額可以知道存入金額 的數(shù)目,然后再進行其它操作。理解了各模塊之間的主要關(guān)系有利于程序的設(shè) 計與完成,使程序的層次結(jié)構(gòu)清晰,便于程序的編寫、閱讀和調(diào)試。2.3總

8、體程序框圖2.4系統(tǒng)的總體流程圖3功能模塊的具體設(shè)計3.1 main()函數(shù)模塊根據(jù)圖銀行信息管理系統(tǒng)的要求,可設(shè)計一個主函數(shù),及定義多個用戶自定義函 數(shù)。在主函數(shù)中定義全局變量,即是在函數(shù)外部定義的變量,其不屬于某一個函 數(shù),而屬于一個源程序文件,在整個程序內(nèi)可以多次被引用。通過將switch語句與break語句聯(lián)合使用來實現(xiàn)多分支選擇結(jié)構(gòu)程序的設(shè)計。運用scanf語句在主函數(shù)中將文件中的內(nèi)容賦給結(jié)構(gòu)體變量,便于在自定義函數(shù)中對結(jié)構(gòu)體的調(diào) 用。在 struct chuhu具體如下:/儲戶結(jié)構(gòu)信息char idnu m11;/char password"/密碼char n ame11

9、;/儲戶姓名char idnu mber19;/儲戶身份證號碼double cun kua n;/存款金額double lixi;/利息double yu;/余額intlei;/儲種char address51;/儲戶地址char Tel15;/儲戶的聯(lián)系電話char khdate40;/開戶日期in t g;/是否掛失(0為未,1為已)huN;/儲戶結(jié)構(gòu)數(shù)組void wan g();/顯示“物聯(lián)越5小組制作”的函數(shù)int yan zhe ng();/驗證帳號和密碼并核查該帳號是否掛失的函數(shù)void li();/計算利息的函數(shù)void date();/顯示當前日期和時間void in sert

10、();/開戶函數(shù)void display();/顯示所有帳戶信息的函數(shù)void in (i nt);/存款函數(shù)void fin d(i nt);/查詢余額函數(shù)void out(i nt);/取款函數(shù)void zhua n(i nt);/轉(zhuǎn)帳函數(shù)void cha ngepwd(i nt);/修改密碼的函數(shù)void guashi (in t);/掛失函數(shù)void del( in t);/銷戶函數(shù)void lilvbiao();/查看利率表void cxgs();/撤消掛失的函數(shù)void grxx(i nt);/查看個人信息的函數(shù)void help();/儲戶須知函數(shù)void ban gzhu();

11、/幫助int i,j,k,A=O,B=O;i,j控制循環(huán),id為帳號,A、B分別為開戶數(shù)和銷戶數(shù)double jin;/存款、取款或轉(zhuǎn)帳金額char ch='y'控制是否繼續(xù)的變量char id11,password7;void mai n()/輸出主菜單主函數(shù)中定義一個用戶存儲的結(jié)構(gòu)體通過將switch語句與break語句聯(lián)合使用來實現(xiàn)多分支選擇結(jié)構(gòu)程序的設(shè)計switch(a)case 1:in sert();break;case 2:display。;break;case 3:b=ya nzhe ng();in (b);break;case 4:b=ya nzhe ng()

12、;fin d(b);break;case 5:b=ya nzhe ng();out(b);break;case 6:b=ya nzhe ng(); zhua n( b); break;case 7:b=ya nzhe ng(); cha ngepwd(b); break;case 8:b=ya nzhe ng();guashi(b); break;case 9:b=ya nzhe ng();del(b);break;case 10:cxgs();break;case 11:b=ya nzhe ng(); grxx(b);break;case 12:Iilvbiao();break;case 1

13、3:help();break;case 14:ban gzhu();break;case 0:system("cls");system("color f1");date();3.2銀行賬戶和密碼信息函數(shù)模塊viod in sert()通過if語句將所有的儲戶服務(wù)選項顯示在桌面上。運用for語句、dowhile和printf()實現(xiàn)銀行系統(tǒng)的輸出顯示。3. 3儲戶身份驗證函數(shù)模塊char idnu m11;/char password7;/ 密碼/儲戶char name11;姓名char idnumber19;身份證號碼double cunkuan;金額d

14、ouble lixi;double yu;int lei;char address51;址char Tel15;聯(lián)系電話char khdate40;/儲戶/存款/利息/余額/儲種/儲戶地/儲戶的/開戶日期int g;是關(guān)鍵代碼:strcmp(比較字符串)case.break(判斷)printf (輸出信息)switch(實現(xiàn)選擇功能分支)3.4進入服務(wù)主頁函數(shù)system("cls");system("color 57");date();輸入賬號密碼方可進入主菜單,由于所需的信息必須通過相應(yīng)的序號才能了解,所以需要運用case語句 和switch ()函

15、數(shù)選出所需要的辦理的業(yè)務(wù)。其主要流程圖如下:關(guān)鍵代碼:printf(輸出信息)scanf (輸入信息)switch (實現(xiàn)多分支結(jié)構(gòu)程序設(shè)計)case-break (實現(xiàn)功能的選擇)3.5選擇服務(wù)種類函數(shù)模塊printf("請選擇功能(0-14)");fflush(stdi n);scan f("%d",&a);/選擇功能switch(a)用戶輸入所需要服務(wù)項目的編號,服務(wù)完成后將提示謝謝使用關(guān)鍵代碼:strcmp (比較兩個字符串的大小)switch (實現(xiàn)多分支結(jié)構(gòu)程序設(shè)計)case (條件選擇)3.6退出服務(wù)程序模塊printf("

16、;您真的要退出嗎(y/n)?");fflush(stdi n);sca nf("%c",&ch);system("cls");break;default:system("cls");printf("nnt您的輸入有誤,請正確選擇功能! ");break;用戶先進行身份驗證,調(diào)用函數(shù)查找服務(wù)項目主頁,完成一項服務(wù)后,若繼續(xù)其它服務(wù)種類,則返回服務(wù)頁面選擇服務(wù)種類繼續(xù)進行新的服務(wù)。關(guān)鍵代碼:if-else (實現(xiàn)分支選擇)getchar (從鍵盤上輸入一個字符)strcmp (比較兩個字符串的大小)4

17、功能模塊的調(diào)試及測試4.1主菜單運行界面圖4.1主頁面運行界面圖4.2查詢服務(wù)項目模塊運行界面輸入登錄賬戶和用戶密碼,然后回車鍵進入服務(wù)主頁面4.3查找用戶信息模塊運行界面輸入序號2然后回車鍵進入顯示所有賬戶界面4.3顯示所有用戶運行界面圖當前 LJ 期:2G15/09/IG my當前時E 13:12諸輸入斷諧白的信儲白梓號(】日位):S88S888B38儲白密碼(&切xmxx畦名 t zhsnj iah#驚戶舅曲證號碼位:&SS33S83&8S333838端入錯身份證請輸入卩位數(shù)字或字無儲戶身忡證號馬1 &位:IZSSBTSISSHS&TSS存就余訓(xùn):

18、100儲種;4活朋、一金定期工、葫年癥期扎三年定期嘰五甲定期請選擇1 Th 1誦Q屯15: u盤富翱卻嗎【it白地址;鄭州大學(xué)開山日期:2615-09-1®是否繼續(xù)(y/n)?4.3-1查看儲戶個人信息運行界面圖4.4開戶信息模塊運行界面4.4開戶運行界面圖4.5銷戶信息模塊運行界面4.5銷戶運行界面圖4.6結(jié)束服務(wù)模塊信息運行界面4.6結(jié)束運行界面圖總結(jié)在為期近兩周的C+課程設(shè)計中,我體會頗多,學(xué)到了很多東西。我加強了對C+程序設(shè)計這門課程的認識,并且復(fù)習(xí)了自己以前學(xué)習(xí)到的知識。這些都使得我對計算機語言的學(xué)習(xí)有了更深入的認識!總之,通過這次課程設(shè)計,我收獲頗豐,相信會為自己以后的學(xué)

19、習(xí)和工作帶來很大的好處。鍛煉了我們挑戰(zhàn)難題,學(xué)會用已掌握的知識去解決具體問題的能力, 進一步培養(yǎng)了獨立思考問題和 解決問題的能力。特別是學(xué)會了在Visual C+中如何調(diào)試程序的方法。當然,兩 位老師的指導(dǎo)幫助也是不可忽視的, 他們給了我許多提示和幫助,教會了我編譯 復(fù)雜程序的方法。在老師幫助下,通過自己的努力,終于完成了這次課程設(shè)計。我經(jīng)過這段時 間的編程,對其中的艱辛,我是深有體會。從剛開始的選擇程序、理解程序到后 來的調(diào)試程序以及改進程序這個過程中, 我遇到了各種各樣的困難和挫折。但是 我堅定信念,對自己充滿了信心,想盡一切辦法克服重重困難。通過課程設(shè)計的訓(xùn)練,我進一步學(xué)習(xí)和掌握了對程序

20、的設(shè)計和編寫, 從中體 會到了面向?qū)ο蟪绦蛟O(shè)計的方便和巧妙。懂得了在進行編寫一個程序之前,要有 明確的目標和整體的設(shè)計思想。另外某些具體的細節(jié)內(nèi)容也是相當?shù)闹匾?這些 寶貴的編程思想和從中摸索到的經(jīng)驗都是在編程的過程中獲得的寶貴財富。 這些 經(jīng)驗對我以后的編程會有很大的幫助的,我要好好利用。雖然這次課程設(shè)計是在參考程序的基礎(chǔ)之上進行的, 但是我覺得對自己是一 個挑戰(zhàn)和鍛煉。我很欣慰自己能在程序中加入自己的想法和有關(guān)程序內(nèi)容,也就是對它的程序改進了一番改進,并有創(chuàng)新。但是我感覺自己的創(chuàng)新還不夠典型, 總之還不是很滿意。另外由于時間的緊迫和對知識的了解不夠廣泛, 造成了系統(tǒng) 中還存在許多不足,功

21、能上還不夠完善。以后我會繼續(xù)努力,大膽創(chuàng)新,爭取能 編寫出透射著自己思想的程序。這次課程設(shè)計讓我充分認識到了自己的不足,認識到了動手能力的重要性。我會在以后的學(xué)習(xí)中更加努力鍛煉自己,提高自己, 讓自己寫出更好更完善的程序,為以后的編程打好基礎(chǔ)! 總而言之,這次C+程序設(shè)計實踐讓我收獲很大程序清單:#in elude <stdio.h> #inelude <stdlib.h> #in elude <stri ng.h> #in elude vconi o.h> #define N 10000 struct ehuhu/儲戶結(jié)構(gòu)信息ehar idnu m1

22、1;ehar password7;ehar n ame11;ehar idnu mber19; 號碼double eun kua n;double lixi;double yu;int lei;ehar address51;ehar Tel15;話ehar khdate40; in t g;未,1為已)huN;/密碼/儲戶姓名儲戶身份證/存款金額/利息/余額/儲種/儲戶地址/儲戶的聯(lián)系電/開戶日期/是否掛失(0為/儲戶結(jié)構(gòu)數(shù)組 void wan g();int yan zhe ng(); void li();void date();/顯示“物聯(lián)網(wǎng)25小組制作”的函數(shù) /驗證帳號和密碼并核查該帳

23、號是否掛失的函數(shù)/計算利息的函數(shù)/顯示當前日期和時間void in sert();void display();void in (i nt);void fin d(i nt);void out(i nt);void zhua n(i nt);void cha ngepwd(i nt);void guashi (in t);void del( in t);void lilvbiao();void cxgs();void grxx(i nt);void help();void ban gzhu();int i,j,k,A=O,B=O; double jin;char ch='y'c

24、har id11,password7;/開戶函數(shù)/顯示所有帳戶信息的函數(shù) /存款函數(shù)/查詢余額函數(shù) /取款函數(shù) /轉(zhuǎn)帳函數(shù)/修改密碼的函數(shù) /掛失函數(shù) /銷戶函數(shù)/查看利率表 /撤消掛失的函數(shù) /查看個人信息的函數(shù)/儲戶須知函數(shù) /幫助/i,j控制循環(huán),id為帳號,A、B分別為開戶數(shù)和銷戶數(shù) /存款、取款或轉(zhuǎn)帳金額/控制是否繼續(xù)的變量/輸出主菜單/選擇功能的變量date();prin tf("nnntt printf("tt 探 printf("tt 探 printf("tt 探 printf("tt 探 printf("tt 探 p

25、rintf("tt 探彖:彖銀行儲蓄管理模擬系統(tǒng)物聯(lián)網(wǎng)25小組制作n.7 n.7 n.7 n.7 n.7/界面1printf("tt 探n");printf("tt探用wa ng();printf("按ENTER鍵進入下一界面。");fflush(stdi n);scan f("%c", &ch);dosystem("cls");system("color f3");date();pri ntf("nnnttt");void mai n()int

26、a,b;char dlzh11,pword7; system("color 79");for(i=0;i<10000000;i+) if(i%340000=0) prin tf(">");pri ntf("ttn"); / 界面 2pri ntf("tt歡迎使用本系統(tǒng)!n");pri ntf("nntt fflush(stdi n); gets(dlzh);請輸入您的登陸帳號:");pri ntf("nntt for(i=0;i<6;i+)fflush(stdi n)

27、;請輸入您的密碼:");pwordi=getch(); prin tf("*"); pword6='0' fflush(stdi n);scan f("%c",&ch);prin tf("ttpri ntf("ttpri ntf("nttt");物聯(lián)網(wǎng)25小組n");n");for(i=0;i<10000000;i+)if(i%340000=0)prin tf(">");if(strcmp(dlzh,"wulia nwa

28、n g")!=0|strcmp("123456",pword)!=0)prin tf("nntt您輸入的登陸帳號或密碼不正確,請重新輸入:printf("tt按ENTER鍵進入重新輸入界面。");fflush(stdi n);sca nf("%c", &ch);while(strcmp(dlzh,"wulia nwan g")!=0|strcmp("123456",pword)!=0);dowa ng();printf("nn按ENTER鍵進入/返回主菜單:

29、");fflush(stdi n);scan f("%c",&ch);system("cls");system("color 57");nn");/清屏date();printf("ttt 主菜單 nn");printf("tt n");/主菜單界面(界面3)pri ntf("ttn");pri ntf("tt1、開戶n");pri ntf("tt2、顯示所有帳戶n");pri ntf("tt3、存

30、款n");pri ntf("tt4、查詢余額n");pri ntf("tt5、取款n");pri ntf("tt6、轉(zhuǎn)帳n");pri ntf("tt7、修改密碼n");pri ntf("tt8、掛失n");pri ntf("tt9、銷戶n");pri ntf("tt10、撤消掛失n");pri ntf("tt11、查看儲戶個人信息n");pri ntf("tt12、查看利率表n");pri ntf(&qu

31、ot;tt13、儲戶須知n");pri ntf("tt14、幫助n");pri ntf("tt.0、退出程序n");pri ntf("ttn");printf("tt ");wa ng();printf("請選擇功能(0-14):-");fflush(stdi n);scan f("%d",&a);switch(a)/選擇功能case 1:/選擇功能后調(diào)用相應(yīng)的函數(shù)in sert(); break;case 2: display。; break;case 3

32、: b=ya nzhe ng(); in (b); break;case 4: b=ya nzhe ng(); fin d(b); break;case 5:b=ya nzhe ng(); out(b); break;case 6:b=ya nzhe ng(); zhua n( b); break;case 7:b=ya nzhe ng(); cha ngepwd(b); break;case 8:b=ya nzhe ng(); guashi(b); break;case 9: b=ya nzhe ng(); del(b); break;case 10: cxgs(); break;case

33、11: b=ya nzhe ng(); grxx(b); break;case 12: lilvbiao(); break;case 13:help(); break;case 14:ban gzhu(); break;case 0:system("cls"); system("color f1"); date();prin tf("nnn t=n");printf("t IIIn");printf("t II使用lln");printf("t IIn");printf(&q

34、uot;t II物聯(lián)網(wǎng)25小組lln");printf("t IIn");printf("t II組長:lln");printf("t II周莉華lln");printf("t IIlln");printf("t II組員:lln");printf("t II周莉華、程彬、張家賀ln");printf("t IIn");printf("t II2006 年9月 23日制作lnprintf("t II prin tf("

35、;tlln");=");wa ng();printf("您真的要退出嗎(y/n)?");fflush(stdi n);scan f("%c", &ch);system("cls");break;default:system("cls");printf("nnt您的輸入有誤,請正確選擇功能!! ");break;if(a=0&&(ch='y'|ch='Y')system("color 0c");date

36、();");wa ng();break;while(1);void in sert()wa ng();dosystem("cls");system("color fO");date();pri ntf("nntt請輸入新儲戶的信息:”);doprintf("nntt 儲戶帳號(10 位):");fflush(stdi n);gets(huA-B.id num);if(strle n( huA-B.id num)!=10)system("cls");printf("ntt輸入錯誤!ntt

37、帳號請輸入10位數(shù)字或字母 for(i=0;i<A-B;i+)if(strcmp(huA-B.id nu m,hui.id num)=0)break;if(i<A-B)prin tf("nntt該帳戶已存在,請重新輸入帳號");while(strle n(huA-B.id num)!=10|i<A-B);printf("ntt 儲戶密碼(6 位):");for(i=0;i<6;i+)fflush(stdi n);huA-B.passwordi=getch();prin tf("*");huA-B.passwor

38、d6='0'fflush(stdi n);/開戶/清屏);scan f("%c",&ch);fflush(stdi n); gets(huA-B. name);doprintf("ntt 儲戶身份證號碼(18位):");fflush(stdi n);gets(huA-B.id nu mber);if(strle n( huA-B.id nu mber)!=18)printf("ntt輸入錯誤!ntt身份證請輸入18位數(shù)字或字母n for(i=0;i<A-B;i+)if(strcmp(huA-B.id nu mber

39、,hui.id nu mber)=0&&strcmp(huA-B. name,hui. nam e)!=0)break;if(i<A-B)nttprin tf("nntt前面已有一個不同姓名的儲戶的身份證號為此號碼,同一個身份證號不可以有不同的姓名,nntt請重新輸入身份證號:n");while(strle n( huA-B.id nu mber)!=18|(strcmp(huA-B.id nu mber,hui.id nu mber)= 0&&strcmp(huA-B. name,hui. name)!=O);printf("

40、;ntt存款金額:");fflush(stdi n);scan f("%lf",&huA-B.cu nkua n);pri ntf("ntt pri ntf("ntttO pri ntf("nttt1 pri ntf("nttt2 pri ntf("nttt3 pri ntf("nttt4儲種:); 活期");一年定期") 兩年定期") 三年定期") 五年定期")doprintf("ntt請選擇(1-4):");fflush(s

41、tdi n);sca nf("%d",&huA-B.lei);if(huA-B.lei<0|huA-B.lei>4)printf("nntt 您選擇錯誤,請正確選擇!");while(huA-B.lei<0|huA-B.lei>4);printf("ntt儲戶電話:");fflush(stdi n);gets(huA-B.Tel);fflush(stdi n);gets(huA-B.address);printf("ntt 開戶日期:");gets(huA-B.khdate);huA

42、-B.g=O;li();huA-B.yu=huA-B.cu nkua n+huA-B.lixi;A+;printf("是否繼續(xù)(y/n)?");fflush(stdi n);scan f("%c",&ch);while(ch='y'|ch='Y');void display()/ 存款struct chuhu z;system("cls");/ 顯示出詳細的信息for(i=0;i<A-B;i+)/ 實現(xiàn)帳號排序功能for(j=0;j<A-B-i-1;j+)if(huj.id nu m

43、>huj+1.id num)z=huj;huj=huj+1;huj+1=z;date();if(A-B=0)pri ntf("nnnttt儲戶信息中暫無帳戶!");elseprintf("nnnttt儲戶信息(按照帳號升序排列)n");prin tf("=nn");printf("tt姓名t儲種t余額(已加利息)t開戶日期t是否掛失(1/0)nn"); for(i=0;i<A-B;i+)prin tf("%st%st%dt%.2lftt%st%dn",hui.id num,hui.

44、name,hui.lei,hui.yu,hui.khd ate,hui.g);prin tf("nnt注:儲種中數(shù)字的含義為:nnt0:活期 1: 一年定期2:兩年定期 3:三年定期4:五年定期");void in(int count)/ 存款if(co un t<3&&strcmp(id,hui.id num)=0 && strcmp(password,hui.password)=0) date();wa ng();doprintf("nntt請輸入存款金額:”);fflush(stdi n);sca nf("%l

45、f",&ji n);if(ji n<0)printf("nnntt存款不能為負數(shù)!!");while(ji n<0);if(ji n>=0)hui.yu+=j in;printf("nnttt您存款成功!nntt 本次存入金額為:%.2f",jin);/查找儲戶余額信息void fin d(i nt count)if(co un t<3&&strcmp(id,hui.id num)=0 && strcmp(password,hui.password)=0) date();pri n

46、tf("nnt您所查詢的儲戶的信息如下:");pri ntf("nntt帳號:%s",hui.id num);pri ntf("nntt姓名:%s",hui. name);pri ntf("nntt儲種:%d",hui.lei);pri ntf("nntt余額(已加利息):%.2lf",hui.yu);pri ntf("nntt開戶日期:s",hui.khdate);pri ntf("nnt注:儲種中數(shù)字的含義為:nnt0:活期兩年定期nt3:三年定期 4:五年定期

47、");1: 一年定期/取款void out( int count)if(co un t<3&&strcmp(id,hui.id num)=0 && strcmp(password,hui.password)=0)date();請輸入取款金額:");doprin tf("nntt fflush(stdi n);scan f("%lf",&ji n);if(hui.yuvji n)printf("nnt對不起,您帳上的金額不夠,請重新輸入取款金額");if(ji n<0)pri

48、ntf("nnntt取款不能為負數(shù)!");while(hui.yu<ji n|jin <0);if(hui.yu >=jin)hui.yu-=ji n;printf("nn 按 ENTER鍵打印取款單:"); fflush(stdi n);sca nf("%c", &ch);system("cls");date();prin tf("nnnttprin tf("nnttprin tf("nnttprin tf("nnttprin tf("n

49、ntt辦理業(yè)務(wù): 取款");%s",hui.id num); %s",hui. name);%d",hui.lei);%.2f",ji n);帳號: 姓名: 儲種: 取款金額:/打印取款單void zhuan(int count)/ 轉(zhuǎn)帳int p=0,a;if(cou nt<3&&p<3)date();dodowa ng();prin tf("nntt請輸入對方的帳號:”);fflush(stdi n);gets(id);prin tf("nntt");for(k=O;k<1OO

50、OOOOO;k+)if(k%340000=0)for(k=0;k<A-B;k+)if(strcmp(id,huk.id nu m)=0)break;if(k<A-B&&huk.g!=1)printf("nn 按 ENTER鍵繼續(xù)下一步 f:");fflush(stdi n);sca nf("%c",&ch);system("cls");break;else if(k<A-B&&huk.g=1)p+;prin tf("nntt您輸入的帳號已掛失,您可以選擇重新輸入或退

51、出。nn");printf("ttt1 、重新輸入 nttt2、退出此程序");printf("nntt請選擇 f");fflush(stdi n);sca nf("%d", &a);if(a=2)break;else if(co un t=2)prin tf("nntt對不起,由于您三次輸入的帳號都已掛失或不存在,程序?qū)顺?。nnt按任意鍵兩次都會進入主界面。oo f");fflush(stdi n);sca nf("%c",&ch);break;elsep+;pr

52、in tf("nntt帳戶表中沒有該帳戶!您可以選擇重新輸入或退出nn");printf("ttt1 、重新輸入 nttt2、退出此程序");printf("nntt請選擇 f");fflush(stdi n);sca nf("%d", &a);if(a=2)break;system("cls");while(A-B!=O);if(k<A-B&&huk.g!=1)doprin tf("nntt請輸入轉(zhuǎn)帳金額:");fflush(stdi n);s

53、ea nf("%lf",&ji n);if(hui.yuvji n)prin tf("nnt對不起,您帳上的金額不夠,請重新輸入取款金 額");if(ji n<0)prin tf("nntt轉(zhuǎn)帳金額不能為負數(shù)!");while(hui.yu<j in);if(ji n>=0)hui.yu-=ji n;huk.yu+=ji n;printf("nnttt您已轉(zhuǎn)帳成功!");printf("nntt本次轉(zhuǎn)帳金額為(元):%.2f",jin);printf("nnt

54、t是否繼續(xù)(y/n)?");fflush(stdi n);sea nf("%c", &ch);while(eh='y'|eh='Y');void changepwd(int count)/ 修改密碼int p=0;if(count<3&&p<3&&strcmp(id,hui.idnum)=0 && strcmp(password,hui.password)=0)date();doprintf("ntt 請輸入新密碼(6位):");for(k=0;

55、k<6;k+)fflush(stdi n);passwordk=getch();prin tf("*");password6='0'fflush(stdi n);sea nf("%c", &ch);printf("nntt請再次輸入新密碼(6位):");for(j=0;j<6;j+)fflush(stdi n);hui.passwordj=getch();prin tf("*");hui.password6='0:fflush(stdi n);sca nf("%c", &ch);if(strcmp(hui.password,password)!=0)p+;prin tf("nntt您兩次輸入的密碼不一致,請重新輸入: ”);printf("nn按ENTER鍵進入重新輸入界面。");fflush(stdi n);scan f("%c", &ch);elseprintf("nnttt密碼修改成功! ntt下次辦理相關(guān)業(yè)務(wù)時請用這個新密

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論