2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩23頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  目錄</b></p><p>  第一章 課程設(shè)計目的和要求1</p><p>  1.1課程設(shè)計教學(xué)環(huán)節(jié)的主要目的1</p><p>  1.2本課程設(shè)計主要目標(biāo)1</p><p>  1.3課程設(shè)計要求1</p><p>  第二章 課程設(shè)計任務(wù)背景與內(nèi)容

2、3</p><p>  2.1任務(wù)背景介紹3</p><p><b>  2.2任務(wù)內(nèi)容3</b></p><p>  第三章 詳細設(shè)計說明5</p><p>  3.1總體模塊圖5</p><p>  3.2程序流程圖6</p><p>  3.3程序設(shè)計思路

3、10</p><p>  3.4編碼與調(diào)試10</p><p>  第四章 軟件使用說明12</p><p>  第五章 課程設(shè)計心得與體會16</p><p>  附錄1 參考文獻17</p><p>  附錄2 程序18</p><p>  第一章 課程設(shè)計目的和要求<

4、/p><p>  1.1課程設(shè)計教學(xué)環(huán)節(jié)的主要目的</p><p>  C語言課程設(shè)計的主要目的是培養(yǎng)學(xué)生綜合運用C語言程序設(shè)計課程所學(xué)到的知識,編寫C程序解決實際問題的能力,以及嚴謹?shù)墓ぷ鲬B(tài)度和良好的程序設(shè)計習(xí)慣。</p><p>  通過課程設(shè)計的訓(xùn)練,學(xué)生應(yīng)該能夠了解程序設(shè)計的基本開發(fā)過程,掌握編寫、調(diào)試和測試C語言程序的基本技巧,充分理解結(jié)構(gòu)化程序設(shè)計的基本方法

5、。</p><p>  C語言程序設(shè)計的主要任務(wù)是要求學(xué)生遵循軟件開發(fā)過程的基本規(guī)范,運用結(jié)構(gòu)化程序設(shè)計的方法,按照課程設(shè)計的題目要求,分析、設(shè)計、編寫、調(diào)試和測試C語言程序及編寫設(shè)計報告。</p><p>  本次課程設(shè)計是通過設(shè)計一個較為簡單的“ATM自動提款機”系統(tǒng),進一步熟悉C++中有關(guān)各種知識的運用與掌握。了解系統(tǒng)開發(fā)的需求分析、模塊分析、編碼測試、模塊組裝與整體調(diào)試的全過程,加

6、深對C++的理解與Visual C++環(huán)境的使用;逐步熟悉程序設(shè)計的方法,并養(yǎng)成良好的編程習(xí)慣,進一步培養(yǎng)完善的C++編程設(shè)計思維,為以后進行軟件編程、數(shù)據(jù)庫管理等深入學(xué)習(xí)打下一個牢固基礎(chǔ)。</p><p>  1.2本課程設(shè)計主要目標(biāo)</p><p>  1.鞏固和加深學(xué)生對C++語言課程的基本知識的理解和掌握;</p><p>  2.掌握C++語言編程和程序調(diào)

7、試的基本技能;</p><p>  3.掌握利用C++語言進行軟件設(shè)計的方法;</p><p>  4.提高書寫程序設(shè)計說明文檔的能力;</p><p>  5.提高運用C++語言解決實際問題的能力。</p><p><b>  1.3課程設(shè)計要求</b></p><p>  1.題目:設(shè)計一款“

8、ATM自動提款機”系統(tǒng)軟件;</p><p>  2.了解軟件開發(fā)的相關(guān)背景;</p><p>  3.參考書籍學(xué)習(xí)相關(guān)課程設(shè)計的知識;</p><p>  4.清楚開發(fā)軟件的各個相關(guān)功能,以便順利開發(fā)軟件;</p><p>  5.對系統(tǒng)功能模塊進行分析,寫出詳細設(shè)計說明文檔;</p><p>  6.設(shè)計完成的軟件

9、要便于操作和使用;</p><p>  7.對自己所設(shè)計的程序進行調(diào)試,并不斷完善;</p><p>  8.在設(shè)計過程中熟練掌握軟件編程的過相關(guān)知識;</p><p>  9.詳細體會并記錄相關(guān)過程,并將心得體會寫在課程設(shè)計報告中;</p><p>  10.設(shè)計完成后提交課程設(shè)計報。</p><p>  第二章 課

10、程設(shè)計任務(wù)背景與內(nèi)容</p><p><b>  2.1任務(wù)背景介紹</b></p><p>  在1939年,一個叫Luther George Simjian的人發(fā)明了ATM的雛形,他將當(dāng)時與硬件設(shè)備相關(guān)的20個專利組合起來,然后說服一家叫Citicorp 的公司去做一個樣板試驗產(chǎn)品出來。6個月后,有銀行說這個產(chǎn)品還是有些需求的。</p><p&

11、gt;  Don Wetzel是其中一些專利的所有人和發(fā)明ATM的主要的貢獻者,當(dāng)他在銀行柜臺排隊等候取錢時,冒出了發(fā)明ATM這種設(shè)備的想法。</p><p>  1968年,Wetzel是一家叫Docutel公司的負責(zé)產(chǎn)品規(guī)范的副總裁,這家公司是開發(fā)包裹自動化處理設(shè)備的。公司中有另外兩個擁有專利的是Tom Barnes,首席機械工程師,和George Chastain,電子工程師。他們在一起花了5百萬美元去開發(fā)

12、第一臺ATM。其實,現(xiàn)代的ATM概念最開始是在1968年出現(xiàn)的,而一個能夠工作的ATM原型在1969年左右才面世,Docutel公司在1973年申請了ATM的專利。第一臺能夠運作的ATM被安裝在紐約的一家銀行。</p><p>  第一臺ATM并不像現(xiàn)在是與銀行的主機連接在一起的,它是離線的,意味著ATM把錢出來后,并不會馬上從你的賬戶上把帳扣掉。因此,銀行非常在意給哪個用戶開通使用ATM的權(quán)限,僅僅允許有良好信

13、用記錄的信用卡用戶在ATM上操作。接著,Wetzel、Barnes和Chastain共同開發(fā)了第一個真正用于ATM上的銀行卡,該卡擁有磁條信息和一個個人ID號,以用于在取錢時做驗證。這個ATM專用卡與信用卡不同,里面包含賬戶等相關(guān)信息。</p><p>  從那以后,就越來越多的公司參與到ATM的研發(fā)當(dāng)中來了。為了使儲戶隨時隨地、方便快捷地提款和進行其它交費業(yè)務(wù)并與國際金融接軌,各大銀行普遍采用了自動柜員機ATM

14、,這些ATM有的在室內(nèi),有的在戶外。它為儲戶提供了24小時的服務(wù),受到了普遍贊譽。</p><p><b>  2.2任務(wù)內(nèi)容</b></p><p>  1、查詢余額:初始余額為10000元2、ATM取款:每次取款金額為100的倍數(shù),總額不超過5000元,支取金額不允許透支。3、ATM存款:不能出現(xiàn)負存款。4、修改密碼:新密碼長度不小于6位,不允許出現(xiàn)6位完全

15、相同的情況,只有舊密碼正確,新密碼符合要求,且兩次輸入相同的情況下才可以成功修改密碼。</p><p>  第三章 詳細設(shè)計說明</p><p><b>  3.1總體模塊圖</b></p><p>  此ATM自動存款機系統(tǒng)主要包含四項功能:</p><p>  1.取款:系統(tǒng)內(nèi)部自定義一個虛擬賬戶,其中包含用戶基本信

16、息,內(nèi)部存有一定余額,取款即從余款內(nèi)自動扣除所取錢數(shù),并在內(nèi)部記錄、存檔;</p><p>  2.存款:同上,存入一定款項,并自動生成記錄,存檔;</p><p>  3.查詢余額:查詢系統(tǒng)內(nèi)部虛擬賬戶的余額錢數(shù);</p><p>  4.密碼修改:修改系統(tǒng)自定義虛擬賬戶生成的密碼,并記錄新密碼。(如圖 3-1)</p><p>  圖 3

17、-1 系統(tǒng)總體模塊圖</p><p><b>  3.2程序流程圖</b></p><p>  1.開始即進入ATM界面根據(jù)提示,先選擇語言,之后進入用戶個人界面,此時需輸入密碼。密碼必須與系統(tǒng)內(nèi)部存儲用戶密碼一致,否則,再次輸入。成功后,進入下一界面——用戶服務(wù)界面。選擇相關(guān)服務(wù),按提示執(zhí)行相關(guān)操作,完畢后可選擇結(jié)束或繼續(xù)。(如圖 3-2)</p>&

18、lt;p>  圖 3-2 總流程圖</p><p>  2.存款時按提示輸入錢數(shù),注意錢數(shù)必須為100的整數(shù)倍,且小于5000,不能是負存款,否則存款不成功返回繼續(xù),滿足條件,存款成功。(如圖 3-3)</p><p>  圖 3-3 存款流程圖</p><p>  3.取款時按提示輸入錢數(shù),注意錢數(shù)必須為100的整數(shù)倍,且小于5000,不能是負取款,否則取款

19、不成功返回繼續(xù),滿足條件,取款成功。(如圖 3-4)</p><p>  圖 3-4取款流程圖</p><p>  4.修改密碼時需注意密碼必須是六位數(shù)字,先輸入原密碼,正確后進行下一步操作,否則返回。原密碼正確,輸入新密碼,再次輸入,兩次輸入一致后,密碼修改成功,保存新密碼,否則返回。(如圖 3-5)</p><p>  圖 3-5 密碼修改流程圖</p&g

20、t;<p>  5.余額查詢,選擇后輸出錢數(shù),之后返回上層。(如圖 3-6)</p><p>  圖 3-6 余額查詢流程圖</p><p><b>  3.3程序設(shè)計思路</b></p><p>  1.此程序主要包含四項功能:取款、存款、余額查詢、密碼修改;</p><p>  2.編程時須先設(shè)定以虛擬

21、用戶,包含用戶基本信息;</p><p>  3.在編程中需對所有數(shù)據(jù)進行限定,包括輸入、輸出、原始定義等。</p><p><b>  3.4編碼與調(diào)試</b></p><p>  此程序包含六個函數(shù):main() computer2() cunkuan() qukuan() mima() yue(),其中:</p><p

22、>  main()為主函數(shù),可輸出開機界面;</p><p>  computer2()對應(yīng)密碼正確后進入功能選擇界面,按提示可提供相關(guān)服務(wù);</p><p>  cunkuan()執(zhí)行存款服務(wù),按相關(guān)提示操作可存款;</p><p>  qukuan()執(zhí)行取款服務(wù),按相關(guān)提示操作可取款;</p><p>  yue()執(zhí)行余額查詢服

23、務(wù),輸出用戶所剩余額;</p><p>  mima()執(zhí)行修改密碼服務(wù),按提示可修改用戶密碼。</p><p>  第四章 軟件使用說明 </p><p><b>  開始進入ATM界面</b>&

24、lt;/p><p>  執(zhí)行main()主函數(shù)</p><p><b>  進行語言選擇或退出</b></p><p><b>  輸入1或2</b></p><p><b>  1開始界面:</b></p><p>  圖 4-1 開始界面</p&g

25、t;<p><b>  輸入密碼:</b></p><p>  密碼正確執(zhí)行computer2()出現(xiàn)功能選擇界面,密碼不正確,繼續(xù)輸入。</p><p>  出現(xiàn)功能選擇界面,輸入n</p><p>  執(zhí)行computer2() //服務(wù)選擇</p><p>  圖 4-2 選擇界面</p>

26、;<p>  2.余額查詢與存款服務(wù)</p><p>  執(zhí)行yue() //余額查詢函數(shù)</p><p>  執(zhí)行cunkuan() //存款函數(shù)</p><p>  圖 4-3 查詢余額與存款界面</p><p>  3.選擇取款與余額查詢</p><p>  執(zhí)行qukuan()

27、 //取款函數(shù)</p><p>  執(zhí)行yue() //余額查詢</p><p>  圖 4-4 取款與余額查詢界面</p><p><b>  4選擇修改密碼</b></p><p>  執(zhí)行mima() //修改密碼函數(shù)</p><p>  圖 4-5 密碼修改界

28、面</p><p>  第五章 課程設(shè)計心得與體會</p><p>  自從學(xué)習(xí)C++以來,這應(yīng)該是我第一次自己獨立自主設(shè)計一個比較大的程序(對我來說確實不?。K^:實踐出真知。通過這次課程設(shè)計我發(fā)現(xiàn)太多問題。</p><p>  以前就知道自己學(xué)得不怎么樣,但沒想到是這么差。首先是基本知識不牢固,許多C++常識是一知半解,有的還不懂。在編寫ATM自動提款機時,運

29、用函數(shù)的調(diào)用始終不能實現(xiàn),最后還是找老師幫忙才能成功運行,實現(xiàn)想要的功能。再有就是關(guān)于函數(shù)如何定義也不是很明白,不知道什么時候要帶返回值,什么時候不需要帶,因此對于函數(shù)定義老是不清不楚,從而導(dǎo)致函數(shù)功能的不到很好實現(xiàn)。</p><p>  其次是不能深入,稍微涉及一點深奧的東西就不會,比如對于面向?qū)ο?、類之類的程序設(shè)計簡直是摸不著頭腦。想用高深點的東西來編寫程序但總是心有余而力不足,進行程序設(shè)計老是感覺縛手縛腳,

30、不能伸展自如。課程設(shè)計一下來,就去網(wǎng)上搜了一下。網(wǎng)上確實有,但是都有錯誤。Copy下來一份運行,想改改,但發(fā)現(xiàn)自己不會。倒是還能看懂怎么回事,但是那程序使用了類來定義,改了好多次但是始終不能改過來。給人一種老鼠拉龜,無從下手的感覺。讓人很是郁悶。</p><p>  最后就是發(fā)現(xiàn)自己沒有編程思維,我想可能和我平時不常練習(xí)有關(guān)吧??匆妱e人編程好好的,感覺很輕松,到自己手里就那么費勁。而且還發(fā)現(xiàn)自己英語不行,對于專業(yè)

31、術(shù)語看不懂,也是導(dǎo)致編寫程序老是失敗的一大原因。</p><p>  總之,這次課程設(shè)計讓我感到了自己在C++編程方面的嚴重不足,以后一定要多多練習(xí)編程,進行有關(guān)方面的精深學(xué)習(xí)。而且程序設(shè)計中,語句的語法和常量變量的定義都有嚴格的要求,有時輸了一個中文標(biāo)點、打錯了一個字母,編譯就不通過,程序無法正常運行。平時就比較粗心大意,因此我經(jīng)常會犯這樣的錯誤,可能要通過幾次乃至十多次的反復(fù)修改、調(diào)試,才能成功。因此,程序設(shè)

32、計于我來說又是一個對心思的歷練過程。</p><p><b>  附錄1 參考文獻</b></p><p>  [1]譚浩強編著:C++程序設(shè)計,北京:清華大學(xué)出版社,2004</p><p>  [2](美)戴特爾(Deitel,H.M.)等編著,張引等譯:C++大學(xué)基礎(chǔ)教程(第五版),北京:電子工業(yè)出版社,2006.6</p>

33、<p>  [3]夏云慶編著:Visual C++ 6.0數(shù)據(jù)庫高級編程,北京:希望電子出版社 2002</p><p>  [4]高林 周海燕:數(shù)據(jù)庫技術(shù),人民郵電出版社,2004年1月第一版</p><p>  [5]嚴蔚敏:數(shù)據(jù)結(jié)構(gòu)(C語言版),清華大學(xué)出版社,1997年4月第一版</p><p><b>  附錄2 程序</b

34、></p><p>  #include "stdio.h"</p><p>  #include "iostream.h"</p><p>  int password=123456;</p><p>  int money=100000;</p><p>  int

35、 z;</p><p>  void computer2();</p><p>  void cunkuan() //存款</p><p><b>  { </b></p><p>  int c;

36、 //存款錢數(shù)</p><p>  cout<<"請輸入你的存款額:"<<endl;</p><p><b>  cin>>c;</b></p><p>  if (c%100==0&&c>0,c<5001) //錢數(shù)必須是一

37、百整數(shù)倍且小于五千不能為負</p><p>  {money+=c;</p><p>  cout<<"交易成功!"<<endl;</p><p>  cout<<"按1鍵繼續(xù),按2返回"<<endl;</p><p><b>  cin>

38、>z;</b></p><p><b>  if(z==1)</b></p><p>  cunkuan();</p><p>  else if(z==2)</p><p>  computer2();</p><p><b>  }</b></p&

39、gt;<p><b>  else</b></p><p><b>  {</b></p><p>  cout<<"錯誤"<<endl;</p><p>  cunkuan();</p><p><b>  }</b>

40、</p><p><b>  }</b></p><p>  void qukuan () //取款</p><p>  { int q; //取款錢數(shù)</p><p>  cout<<"

41、;請輸入你的取款額:"<<endl;</p><p><b>  cin>>q;</b></p><p>  if(q<50001,q%100==0&&q>0) //取款必須是一百整數(shù)倍且小于五千不能為負</p><p><b>  {</b>&l

42、t;/p><p><b>  money-=q;</b></p><p>  cout<<"按1鍵繼續(xù),按2返回"<<endl; //功能選擇</p><p><b>  cin>>z;</b></p><p><b>  if(z

43、==1)</b></p><p><b>  qukuan();</b></p><p>  else if(z==2)</p><p>  computer2();</p><p><b>  }</b></p><p>  else if(q>=mone

44、y)</p><p><b>  {</b></p><p>  cout<<"你的余額不足!請返回后再取"<<endl;</p><p>  qukuan () ;</p><p>  cout<<"按1鍵繼續(xù),按2返回"<<en

45、dl;</p><p><b>  cin>>z;</b></p><p><b>  if(z==1)</b></p><p><b>  qukuan();</b></p><p>  else if(z==2)</p><p>  co

46、mputer2();</p><p><b>  }</b></p><p><b>  else</b></p><p><b>  { </b></p><p>  cout<<"錯誤"<<endl;</p>&

47、lt;p>  qukuan () ;</p><p>  cout<<"按1鍵繼續(xù),按2返回"<<endl;</p><p><b>  cin>>z;</b></p><p><b>  if(z==1)</b></p><p>&l

48、t;b>  qukuan();</b></p><p>  else if(z==2)</p><p>  computer2();</p><p><b>  }</b></p><p><b>  }</b></p><p>  int yue()

49、 //余額查詢</p><p><b>  {</b></p><p>  cout<<money<<endl;</p><p>  cout<<"按1鍵繼續(xù),按2返回"<<endl;</p><p>

50、;<b>  cin>>z;</b></p><p><b>  if(z==1)</b></p><p><b>  yue() ;</b></p><p>  else if(z==2)</p><p>  computer2();</p><

51、;p>  return money;</p><p><b>  }</b></p><p>  void mima( ) //密碼修改</p><p><b>  {</b></p><p>  int m, p1,p2;

52、 //原密碼,新密碼,新密碼確認</p><p>  cout<<"請輸入原密碼"<<endl;</p><p><b>  cin>>m;</b></p><p>  if(m=password)</p><p><b>

53、;  {</b></p><p>  cout<<"輸入你的新密碼:(必須是六位數(shù)字)"<<endl;</p><p><b>  cin>>p1;</b></p><p>  cout<<"請確認你的新密碼:"<<endl;<

54、/p><p><b>  cin>>p2;</b></p><p>  if(p1==p2&&p1<1000000) //兩次輸入新密碼一致且新密碼是六位整數(shù)</p><p><b>  {</b></p><p>  password

55、=p1; </p><p>  cout<<"密碼保存成功,自動返回。"<<endl;</p><p>  computer2() ;</p><p><b>  }</b></p><p><b>  else</b></p><p&

56、gt;  cout<<"你兩次輸入的密碼不一致!!!自動返回!"<<endl;</p><p><b>  mima();</b></p><p><b>  }</b></p><p><b>  else</b></p><p>

57、  cout<<"你輸入的密碼不正確!!!自動返回!"<<endl;</p><p><b>  mima();</b></p><p><b>  }</b></p><p>  void computer2() </p><p>

58、;<b>  {</b></p><p>  cout<<" 請選擇業(yè)務(wù)功能 "<<endl;</p><p>  cout<<"1. 人民幣存款業(yè)務(wù)"<<endl;</p><p>  cout<<"2. 人民幣取款業(yè)務(wù)"

59、<<endl;</p><p>  cout<<"3. 余額查詢 "<<endl;</p><p>  cout<<"4. 修改密碼 "<<endl;</p><p>  cout<<"5. 結(jié)束 "

60、;<<endl;</p><p>  cout<<" 請選擇 (1到5): "<<endl;</p><p><b>  int n;</b></p><p><b>  cin>>n;</b></p><p><b>

61、  if(n==1)</b></p><p>  cunkuan() ;</p><p>  else if(n==2)</p><p><b>  qukuan();</b></p><p>  else if(n==3)</p><p><b>  yue();</

62、b></p><p>  else if(n==4)</p><p><b>  mima();</b></p><p>  else if(n==5)</p><p>  cout<<"謝謝使用"<<endl;</p><p><b>

63、  else</b></p><p>  cout<<"輸入錯誤"<<endl;</p><p>  getchar();</p><p><b>  }</b></p><p>  void main()</p><p><b>

64、  {</b></p><p>  cout<<"*********************************************************"<<endl;</p><p>  cout<<"*

65、 *"<<endl;</p><p>  cout<<"* Welcome to use automatic Teller Machine ! *"<<endl;</p><p>  cout<<"*

66、 *"<<endl;</p><p>  cout<<"* 歡迎使用 *"<<endl;</p><p>  cout<<"*

67、 *"<<endl;</p><p>  cout<<"*********************************************************"<<endl;</p><p>  cout<<" Please sel

68、ect your native language (請選擇用戶語言)"<<endl;</p><p>  cout<<"1. English,"<<endl;</p><p>  cout<<"2. 中文,"<<endl;</p><p>  cout<

69、;<"3. Exit (退出系統(tǒng)),"<<endl;</p><p>  cout<<"Enter your choice (between 1 to 3)請選擇(在1和3之間)"<<endl;</p><p>  int p ; //功

70、能選擇</p><p><b>  cin>>p;</b></p><p>  if(p==1||2)</p><p><b>  {</b></p><p>  int pass; //密碼</p>

71、<p>  cout<<"請輸入你的密碼:"<<endl;</p><p>  cin>>pass;</p><p>  if(pass==password)</p><p>  computer2();</p><p><b>  else</b>&

72、lt;/p><p>  cout<<"輸入錯誤"<<endl;</p><p>  getchar();</p><p><b>  }</b></p><p>  else if(p==3)</p><p>  cout<<"Than

溫馨提示

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

評論

0/150

提交評論