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

下載本文檔

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

文檔簡介

1、<p><b>  電子信息學(xué)院</b></p><p><b>  軟件工程系</b></p><p>  課 程 設(shè) 計 報 告</p><p> ?。?013 -2014 第 2學(xué)期)</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.詳細(xì)設(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>  參 考 文 獻(xiàn)13</p><p><b>  1. 問題

7、分析</b></p><p><b>  1.1 問題描述</b></p><p>  本次C++課程設(shè)計題目是“ATM取款機(jī)程序”。</p><p>  (1)軟件用途:ATM取款</p><p>  (2)功能概述:模擬ATM取款機(jī) 登陸、取款、查詢。</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ù)用于接受輸入用戶的操作項(xiàng)目編號,用戶輸入編號后跳轉(zhuǎn)到相對應(yīng)的存款,查詢,取款,退出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ù)用于接受輸入用戶的操作項(xiàng)目編號,用戶輸入編號后跳轉(zhuǎn)到相對應(yīng)的登陸,選擇操作界面,存款,取款,查詢,退出函數(shù)模塊。另外還有一個輸入流存儲用戶數(shù)據(jù)在文本文檔。除此加入了一個time()函數(shù)用于操作

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

15、;</p><p><b>  3.1 系統(tǒng)的停頓</b></p><p>  因?yàn)檫@個操作比較簡單,所以跳轉(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)進(jìn)入跳轉(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 請輸入正確的選項(xiàng)!按回車鍵繼續(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ù)是否與文本里對應(yīng)的數(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)到相應(yīng)的操作模塊,一共有1到4個選項(xiàng),分別執(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)到相應(yīng)的模塊</p><p><b>  }</b></p><p><b>  else<

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

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.當(dāng)用戶輸入的選項(xiàng)不符合要求時,系統(tǒng)將驗(yàn)證并報錯</p><p>  4.選擇登陸輸入賬號如果不正確</p><p>  5.輸入密碼不正確則提示重新輸入</p><p><b&

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

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

59、否與用戶輸入的數(shù)據(jù)相同也由于自己經(jīng)驗(yàn)不足老是在小問題上卡住。總的來說問題是很少的,因?yàn)槌绦虮緛砭秃芎唵蔚木壒室矝]多少復(fù)雜的要求就簡單的處理了。</p><p><b>  6. 課設(shè)小結(jié)</b></p><p>  這次的設(shè)計因?yàn)橐矝]要求是復(fù)雜的功能,所以設(shè)計相對簡單,整體的都只有一個類,用不同函數(shù)構(gòu)成不同的模塊來實(shí)現(xiàn)各項(xiàng)功能,設(shè)計中用的最多的就是if和swith語句

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

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

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

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

溫馨提示

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

評論

0/150

提交評論