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

下載本文檔

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

文檔簡介

1、<p><b>  電子信息學院</b></p><p><b>  軟件工程系</b></p><p>  課 程 設(shè) 計 報 告</p><p> ?。?013 -2014 第 2學期)</p><p>  課程設(shè)計類型:面向?qū)ο蟪绦蛟O(shè)計</p><p&g

2、t;  題目:ATM自動粗取款系統(tǒng)</p><p><b>  目錄</b></p><p><b>  目錄1</b></p><p><b>  1. 問題分析2</b></p><p>  1.1 問題描述2</p><p>  1.2 要求

3、分析2</p><p><b>  2. 總體設(shè)計2</b></p><p>  2.1 功能分析2</p><p>  2.2 數(shù)據(jù)抽象2</p><p>  2.3 類的定義3</p><p>  2.4 總體結(jié)構(gòu)3</p><p><b>  

4、3.詳細設(shè)計3</b></p><p>  3.1 系統(tǒng)的停頓4</p><p><b>  3.2 主頁面4</b></p><p><b>  3.3 登陸4</b></p><p>  3.4 功能界面5</p><p><b>  3.

5、5 存款6</b></p><p><b>  3.6 取款6</b></p><p><b>  3.7 查詢7</b></p><p><b>  3.8 退出7</b></p><p><b>  4. 功能測試7</b><

6、;/p><p>  4.1 本系統(tǒng)的主界面7</p><p><b>  4.2 界面8</b></p><p>  5.遇到的問題12</p><p>  6. 課設(shè)小結(jié)12</p><p>  參 考 文 獻13</p><p><b>  1. 問題

7、分析</b></p><p><b>  1.1 問題描述</b></p><p>  本次C++課程設(shè)計題目是“ATM取款機程序”。</p><p>  (1)軟件用途:ATM取款</p><p>  (2)功能概述:模擬ATM取款機 登陸、取款、查詢。</p><p>&l

8、t;b>  1.2 要求分析</b></p><p>  根據(jù)題目要求,做出如下的具體分析:</p><p>  從需求可以發(fā)現(xiàn)軟件只需要一個ATM類,可以主要分為主頁,主頁面zhuyemian();</p><p>  登陸denglu();功能界面djmian();查詢chaxun();取款qukuan();存款cunkuan();退出tuic

9、hu();幾個主要的公有類和一個存款數(shù)數(shù)目私有類zong()。</p><p>  其中,主頁面zhuyemian()和操作界面djmian()兩個函數(shù)用于接受輸入用戶的操作項目編號,用戶輸入編號后跳轉(zhuǎn)到相對應的存款,查詢,取款,退出4個函數(shù)模塊。另外還有有一個輸入流存儲用戶數(shù)據(jù)在文本文檔。</p><p><b>  2. 總體設(shè)計</b></p>&

10、lt;p><b>  2.1 功能分析</b></p><p>  1. 要求分析如下:</p><p>  主頁面zhuyemian()和功能界面djmian()兩個函數(shù)用于接受輸入用戶的操作項目編號,用戶輸入編號后跳轉(zhuǎn)到相對應的登陸,選擇操作界面,存款,取款,查詢,退出函數(shù)模塊。另外還有一個輸入流存儲用戶數(shù)據(jù)在文本文檔。除此加入了一個time()函數(shù)用于操作

11、之間停頓,是用戶可以看清自己的操作免得跳轉(zhuǎn)過快。其中,主頁面的功能包括登陸和退出,并且要求對輸入不符合要求的數(shù)做出提示,其次登陸的賬號密碼輸入錯誤也要提示并且要可以重新輸入。操作界面也要實現(xiàn)對輸入不符的情況做出提示。存款選項需要把用戶輸入的數(shù)據(jù)加上原本的金額并輸出顯示。取款選項需要把用戶輸入的數(shù)據(jù)用余額減去后輸出顯示。退出選項只需要做出輸出感謝的話就行了。</p><p><b>  2.2 數(shù)據(jù)抽象

12、</b></p><p>  1.ATM類的信息:</p><p>  public={ A,id,pd,x,y,z,B,cun,qu}</p><p>  A={整型,接收用戶輸入主頁面操作編號 }</p><p>  id={整型,接收用戶輸入賬戶 }</p><p>  pd={整型,接收用戶輸入密碼

13、</p><p>  x={整型,讀取文本里的賬戶 }</p><p>  y={整型,讀取文本里的密碼} </p><p>  z={整型,讀取文本里的余額 }</p><p>  B={整型,接收用戶輸入功能頁面操作編號 }</p><p>  cun={整型,接收用戶輸入的存款金額}</p><

14、;p>  qu={整型,接收用戶輸入的取款金額}</p><p><b>  2.3 類的定義</b></p><p><b>  ATM類</b></p><p><b>  2.4 總體結(jié)構(gòu)</b></p><p><b>  3.詳細設(shè)計</b>

15、;</p><p><b>  3.1 系統(tǒng)的停頓</b></p><p>  因為這個操作比較簡單,所以跳轉(zhuǎn)比較快,因此我設(shè)計了一個系統(tǒng)的停頓時間。</p><p>  void ATM::time()</p><p><b>  {</b></p><p>  cout&

16、lt;<"\n請稍等幾秒鐘! 系統(tǒng)正在處理中...\n"<<endl;//每次操作之后便會顯示這幾個字</p><p><b>  }</b></p><p>  系統(tǒng)進入跳轉(zhuǎn)后便調(diào)用函數(shù)time()執(zhí)行停頓,即</p><p>  time();Sleep(3000);</p><p&

17、gt;<b>  3.2 主頁面</b></p><p>  主頁面主要是執(zhí)行接收用戶的操作輸入并跳轉(zhuǎn)的登陸界面</p><p><b>  cin>>A;</b></p><p>  if(A>0&&A<3)//用戶的輸入是否是1或者2</p><p>&l

18、t;b>  {</b></p><p><b>  switch(A)</b></p><p><b>  {</b></p><p>  case 1:denglu();break;//輸入為1就跳轉(zhuǎn)登陸界面</p><p>  case 2:tuichu();break;//輸

19、入為2就退出</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p>  cout<<&quo

20、t;\t--------------------------------------------------------------\n";</p><p>  cout<<"\t 請輸入正確的選項!按回車鍵繼續(xù)操作... \n";</p><p>  cout<<"\t-----------------------

21、---------------------------------------\n";</p><p>  cin.get();</p><p>  cin.get();</p><p><b>  3.3 登陸</b></p><p>  登陸界面要先打開一個txt文本,里面存放了用戶數(shù)據(jù)。</p>

22、;<p>  int id,pd,x,y,z;</p><p>  ifstream shuju("ATM.txt",ios::in);//打開文本,并且只做讀取操作</p><p>  if(! shuju)//判斷是否打開成功</p><p>  {cerr<<"讀取錯誤"<<endl

23、;</p><p><b>  exit(1);</b></p><p><b>  }</b></p><p>  shuju>>x>>y>>z;//依次賦值給xyz</p><p>  zong=z;//z賦值給余額zong</p><p&

24、gt;  然后判斷用戶輸入的數(shù)據(jù)是否與文本里對應的數(shù)據(jù)吻合,是就繼續(xù)操作,否就重新輸入。</p><p>  cout<<"\n ☆☆☆☆☆請輸入卡號:";</p><p><b>  cin>>id;</b></p><p><b>  if(id==x)</b&g

25、t;</p><p><b>  {</b></p><p>  cout<<" ☆☆☆☆☆請輸入密碼:";</p><p><b>  cin>>pd;</b></p><p>  time();Sleep(3000);</p&g

26、t;<p><b>  if(pd!=y)</b></p><p><b>  {</b></p><p>  cout<<"\t--------------------------------------------------------------\n";</p><p>

27、;  cout<<"\t☆☆您輸入的密碼不正確,請按回車鍵重新選擇!☆☆\n";</p><p>  cout<<"\t--------------------------------------------------------------\n";</p><p>  cin.get();</p><p

28、>  cin.get();//密碼錯誤則重新輸入</p><p><b>  else</b></p><p><b>  {</b></p><p>  cout<<"\t-------------------------------------------------------------

29、-\n";</p><p>  cout<<"\t☆☆密碼正確,請按回車鍵繼續(xù)操作!☆☆ \n";</p><p>  cout<<"\t--------------------------------------------------------------\n";</p><p>

30、;  system("cls");</p><p><b>  djmian();</b></p><p>  }//密碼正確則跳轉(zhuǎn)到功能界面</p><p><b>  }</b></p><p><b>  else</b></p><

31、;p><b>  {</b></p><p>  cout<<"\t--------------------------------------------------------------\n";</p><p>  cout<<"\t您輸入的卡號不存在,請按回車鍵后重新選擇!"<<

32、endl;</p><p>  cout<<"\t--------------------------------------------------------------\n";</p><p>  cin.get();</p><p>  cin.get();//卡號錯誤重新輸入</p><p><

33、b>  3.4 功能界面</b></p><p>  功能界面主要是接收用戶的數(shù)據(jù)輸入后跳轉(zhuǎn)到相應的操作模塊,一共有1到4個選項,分別執(zhí)行跳轉(zhuǎn)到存款,取款,查詢和退出模塊。</p><p><b>  cin>>B;</b></p><p>  if(B>0&&B<5)//判斷用戶輸入是

34、否為1到4</p><p><b>  {</b></p><p><b>  switch(B)</b></p><p><b>  {</b></p><p>  case 1:cunkuan();break;</p><p>  case 2:qu

35、kuan();break;</p><p>  case 3:chaxun();break;</p><p>  case 4:tuichu();break;</p><p>  }//跳轉(zhuǎn)到相應的模塊</p><p><b>  }</b></p><p><b>  else<

36、/b></p><p><b>  {</b></p><p>  cout<<"\t--------------------------------------------------------------\n";</p><p>  cout<<"\t 請輸入正確的選項! 按

37、回車鍵繼續(xù)操作! \n";</p><p>  cout<<"\t--------------------------------------------------------------\n";</p><p>  cin.get();</p><p>  cin.get();</p>

38、;<p>  system("cls");</p><p>  djmian();//如果不是的話就繼續(xù)輸入</p><p><b>  }</b></p><p><b>  3.5 存款</b></p><p>  簡單的把用戶的輸入數(shù)據(jù)加到從文本讀取的數(shù)據(jù)并返

39、回結(jié)果并輸出到屏幕</p><p><b>  int cun;</b></p><p>  cout<<endl<<"\n☆☆請輸入您要存入的金額:";</p><p><b>  cin>>cun;</b></p><p>  time()

40、;Sleep(3000);</p><p>  zong=zong+cun;</p><p>  cout<<"\t--------------------------------------------------------------\n";</p><p>  cout<<"\t

41、 您目前賬戶的余額為:"<<zong<<"元 \n";</p><p>  cout<<"\t 繼續(xù)操作請按回車鍵... \n";</p><p>  cout<<"\t---

42、-----------------------------------------------------------\n";</p><p>  cin.get();</p><p>  cin.get();</p><p><b>  3.6 取款</b></p><p>  取款也是簡單的用余額減去用戶輸

43、入的數(shù)據(jù)后顯示</p><p><b>  int qu;</b></p><p>  cout<<endl<<"\n☆☆請輸入取款金額:";</p><p><b>  cin>>qu;</b></p><p>  time();Sleep(

44、3000);</p><p>  if(qu>zong)</p><p><b>  {</b></p><p>  cout<<"\t--------------------------------------------------------------\n";</p><p>

45、;  cout<<"\t 對不起!您的余額不足,請按回車鍵后重新輸入... \n";</p><p>  cout<<"\t--------------------------------------------------------------\n";</p><p><b>

46、  qukuan();</b></p><p><b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p>  zong=zong-qu;</p><p>  cout<

47、<"\t--------------------------------------------------------------\n";</p><p>  cout<<"\t 您目前賬戶的余額為:"<<zong<<"元 \n";</p>

48、<p>  cout<<"\t 繼續(xù)操作請按回車鍵... \n";</p><p>  cout<<"\t--------------------------------------------------------------\n";</p>&

49、lt;p>  cin.get();</p><p>  cin.get();</p><p><b>  3.7 查詢</b></p><p>  這個是最簡單的部分,就是用cout輸出余額即可。</p><p>  cout<<"\t-----------------------------

50、---------------------------------\n";</p><p>  cout<<"\t 您目前賬戶的余額為:"<<zong<<"元 \n";</p><p>  cout<<"\t

51、 繼續(xù)操作請按回車鍵... \n";</p><p>  cout<<"\t--------------------------------------------------------------\n";</p><p>  cin.get();</p><p>

52、  cin.get();</p><p><b>  3.8 退出</b></p><p>  這個沒什么,退出即可。</p><p>  time();Sleep(3000);</p><p>  cout<<endl;</p><p>  cout<<"☆☆☆

53、☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆\n";</p><p>  cout<<"☆☆☆☆☆☆ ☆☆☆☆☆☆\n";</p><p>  cout<<"☆☆☆☆☆☆ 溫馨提示:請記得收好您的

54、銀行卡和錢!歡迎再次使用 ☆☆☆☆☆☆\n";</p><p>  cout<<"☆☆☆☆☆☆ ☆☆☆☆☆☆\n";</p><p>  cout<<"☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆

55、☆☆\n";</p><p><b>  4. 功能測試</b></p><p>  4.1 本系統(tǒng)的主界面</p><p>  1. 高校工資管理系統(tǒng)。本系統(tǒng)的主要功能有:</p><p><b>  1. 用戶登陸</b></p><p><b>  

56、2. 退出系統(tǒng)</b></p><p>  2. 用戶可根據(jù)系統(tǒng)提示和用戶需要輸入1—2的操作數(shù)字。</p><p>  3.當用戶輸入的選項不符合要求時,系統(tǒng)將驗證并報錯</p><p>  4.選擇登陸輸入賬號如果不正確</p><p>  5.輸入密碼不正確則提示重新輸入</p><p><b&

57、gt;  4.2 界面</b></p><p>  1.輸入正確的密碼后進入功能選擇界面</p><p>  2.如果輸入的不是1或者2則提示重新輸入</p><p>  2.輸入選項1選擇存款功能,并輸入存款金額后顯示余額</p><p>  3.輸入選項2選擇取款金額, </p><p>  此處如果

58、輸入的取款金額小于余額的話,系統(tǒng)將提示重新輸入</p><p>  4.輸入選項3選擇查詢功能</p><p>  5.輸入選項4選擇退出</p><p><b>  5.遇到的問題</b></p><p>  這次設(shè)計遇到最大的問題就是輸入流的讀取和賦值問題,讀取只有要怎么一次賦值3個數(shù)研究了好久,讀取數(shù)據(jù)后后要驗證是

59、否與用戶輸入的數(shù)據(jù)相同也由于自己經(jīng)驗不足老是在小問題上卡住??偟膩碚f問題是很少的,因為程序本來就很簡單的緣故也沒多少復雜的要求就簡單的處理了。</p><p><b>  6. 課設(shè)小結(jié)</b></p><p>  這次的設(shè)計因為也沒要求是復雜的功能,所以設(shè)計相對簡單,整體的都只有一個類,用不同函數(shù)構(gòu)成不同的模塊來實現(xiàn)各項功能,設(shè)計中用的最多的就是if和swith語句

60、,嘴復雜的也就是個輸入流函數(shù)。而且我意識到這個系統(tǒng)不會返回數(shù)據(jù)給文本,也就是說只可以單純的用一次,數(shù)據(jù)無法保存,這讓我覺得不足。</p><p>  經(jīng)過一個學期的學習和上機實踐,使我對C++語言有了更認識和和了解,要想學好它要重在實踐,要通過不斷的上機操作才能更好的學習它。這次課程設(shè)計讓我更加了解C++。課設(shè)題目要求不僅要求對課本知識有較深刻的了解,同時要求程序設(shè)計者有較強的思維和動手能力和更加了解編程思想和編

61、程技巧。 </p><p>  這次課程設(shè)計讓我有一個深刻的體會,那就是細節(jié)決定成敗,編程最需要的是嚴謹,如何的嚴謹都不過分,往往檢查了半天發(fā)現(xiàn)錯誤發(fā)生在某個括號,分號,引號,或者數(shù)據(jù)類型上。就像我在寫ATM類時,寫完后,忘了在大括號后加個分號,這一點小小的錯誤也耽誤了我?guī)资昼?,所以說細節(jié)很重要。 </p><p>  程序設(shè)計時,也不要怕遇到錯誤,在實際操作過程中犯

62、的一些錯誤還會有意</p><p>  外的收獲,感覺課程設(shè)計很有意思。在具體操作中對這學期所學的C++語言的理論知識得到鞏固,達到課程設(shè)計的基本目的,也發(fā)現(xiàn)自己的不足之出,在以后的上機中應更加注意,同時體會到C++語言具有的語句簡潔,使用靈活,執(zhí)行效率高等特點。發(fā)現(xiàn)上機的重要作用,特別是對數(shù)組和循環(huán)有了深刻的理解。      </p>&

63、lt;p>  這個程序是我看了書之后遇到問題請教了同學和老師完成的,同時我認為我們的工作是一個團隊的工作,團隊需要個人,個人也離不開團隊,必須發(fā)揚團結(jié)協(xié)作的精神。某個人的離群都可能導致整項工作的失敗。實習中只有一個人知道原理是遠遠不夠的,必須讓每個人都知道,否則一個人的錯誤,就有可能導致整個工作失敗。團結(jié)協(xié)作是我們成功的一項非常重要的保證。而這次課程設(shè)計也正好鍛煉我們這一點,這也是非常寶貴的 </p>&l

溫馨提示

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

評論

0/150

提交評論