c++圖書管理系統(tǒng)課程設(shè)計_第1頁
已閱讀1頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  目錄 </b></p><p><b>  目錄1</b></p><p><b>  圖書管理程序2</b></p><p><b>  源程序:2</b></p><p><b>  心得與體會7<

2、/b></p><p>  課設(shè)心得: 課設(shè)心得7</p><p>  課設(shè)心得: 課設(shè)心得8</p><p><b>  圖書管理程序</b></p><p>  圖書信息應(yīng)該包含:圖書

3、編號、書名、作者姓名、出版社、價格等,請設(shè)計一個圖書管理程序。該程序具有信息的錄入、查詢、修改、刪除等基本功能。具有下列功能:</p><p>  1.通過鍵盤輸入圖書的基本信息;</p><p>  2.給定圖書編號,查詢顯示該本圖書的信息;</p><p>  3.給定作者姓名,查詢顯示所有該作者編寫的圖書信息;</p><p>  4.

4、給定出版社,顯示該出版社的所有圖書信息;</p><p>  1)給定圖書編號,刪除該圖書的信息;</p><p>  2)提供一些統(tǒng)計各類信息的功能。</p><p>  提示:設(shè)計一個結(jié)構(gòu)體類型或類類型的一維數(shù)組,用來存放圖書信息。</p><p><b>  源程序:</b></p><p>

5、;  #include <iostream.h></p><p>  #include <stdlib.h></p><p>  #include <string.h></p><p>  #include <fstream.h></p><p>  class Book</p>

6、<p><b>  {</b></p><p><b>  public:</b></p><p>  int numble;</p><p>  char bookname[38];</p><p>  char author[38];</p><p>  cha

7、r press[38];</p><p>  double price;</p><p>  void getdetail()</p><p>  {cout<<" 圖書編號: ";</p><p>  cin>>numble;</p><p&

8、gt;  cout<<" 書名: ";</p><p>  cin>>bookname;</p><p>  cout<<" 作者姓名: ";</p><p>  cin>>author;<

9、/p><p>  cout<<" 出版社: ";</p><p>  cin>>press;</p><p>  cout<<" 價格: ";</p><p>  cin>&g

10、t;price;</p><p><b>  }</b></p><p>  void display()</p><p><b>  {</b></p><p>  cout<<"圖書編號 書名 作者姓名 出版社 價格 "<<endl;<

11、/p><p><b>  }</b></p><p>  void print()</p><p><b>  {</b></p><p>  cout<<" "<<numble<<" "<<bookname

12、<<" "<<author<<" "<<press<<" "<<price<<endl;</p><p><b>  }</b></p><p>  int getnumble()</p><

13、p>  {return numble;}</p><p>  char *getbookname()</p><p>  {return bookname;}</p><p>  char *getauthor()</p><p>  {return author;}</p><p>  char *getpre

14、ss()</p><p><b>  {</b></p><p>  return press;</p><p><b>  }</b></p><p>  double getprice()</p><p><b>  {</b></p>

15、<p>  return price;</p><p><b>  }</b></p><p><b>  };</b></p><p><b>  void mu()</b></p><p>  {cout<<"

16、 *** **----------------------"<<endl;</p><p>  cout<<" 圖書管理系統(tǒng)"<<endl;</p><p>  cout<<" ---

17、---------------------------------"<<endl;</p><p>  cout<<" 1.) 退出系統(tǒng) "<<endl;</p><p>  cout<<"

18、 2.) 輸入圖書信息"<<endl;</p><p>  cout<<" 3.) 顯示圖書信息"<<endl;</p><p>  cout<<" 4.) 查詢圖書信息&qu

19、ot;<<endl;</p><p>  cout<<" 5.) 刪除圖書信息"<<endl;</p><p>  cout<<" 請選擇服務(wù)項目:"<<endl; &l

20、t;/p><p><b>  }</b></p><p>  void set()</p><p><b>  {</b></p><p>  system("cls");</p><p><b>  mu();</b></p>

21、;<p><b>  Book b1;</b></p><p>  ofstream outfile("book.txt",ios::app);</p><p>  b1.getdetail();</p><p>  outfile.write((char *)&b1,sizeof(b1));</

22、p><p>  outfile.close();</p><p><b>  }</b></p><p>  void dis()</p><p><b>  {</b></p><p>  system("cls");</p><p>

23、;<b>  mu();</b></p><p><b>  Book b1;</b></p><p>  ifstream infile("book.txt");</p><p>  b1.display();</p><p>  while(infile.read((char

24、 *)&b1,sizeof(b1)))</p><p><b>  {</b></p><p>  b1.print();</p><p><b>  }</b></p><p>  infile.close();</p><p><b>  }</b

25、></p><p>  void chaxun() </p><p><b>  { </b></p><p>  system("cls");</p><p><b>  mu();</b></p><p>  int

26、numble,x;</p><p>  char author[38],press[38];</p><p><b>  Book b1;</b></p><p>  cout<<"1.根據(jù)圖書編號進行查找\n";</p><p>  cout<<"2.根據(jù)作者姓名進

27、行查找\n";</p><p>  cout<<"3.根據(jù)出版社進行查找\n";</p><p>  fstream fs("f1.txt",ios::in|ios::out);</p><p><b>  cin>>x;</b></p><p>

28、  if(x==1) // 按圖書編號查詢</p><p><b>  {</b></p><p>  cout<<("需要查找的圖書編號為:")<<endl;</p><p>  cin>>numble;</p><p>  whil

29、e(true)</p><p><b>  {</b></p><p>  fs.read((char *)&b1,sizeof(b1));</p><p>  if(numble==b1.getnumble ())</p><p><b>  {</b></p><

30、;p>  b1.display();</p><p>  b1.print();</p><p>  fs.close();</p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  }</b&

31、gt;</p><p><b>  }</b></p><p>  if(x==2) // 按作者姓名查詢</p><p><b>  {</b></p><p>  cout<<("需要查找的作者姓名為:")<<endl;</p>

32、;<p>  cin>>author[38];</p><p>  while(true)</p><p><b>  {</b></p><p>  fs.read((char *)&b1,sizeof(b1));</p><p>  if(strcmp(author,b1.getau

33、thor())==0)</p><p><b>  {</b></p><p>  b1.display();</p><p>  b1.print();</p><p>  fs.close();</p><p><b>  break;</b></p>&l

34、t;p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  if(x==3) // 按出版社查詢</p><p><b>  {</b></p><

35、p>  cout<<("需要查找的出版社為:")<<endl;</p><p>  cin>>press[38];</p><p>  while(true)</p><p><b>  {</b></p><p>  fs.read((char *)&

36、;b1,sizeof(b1));</p><p>  if(strcmp(press,b1.getpress())==0)</p><p><b>  {</b></p><p>  b1.display();</p><p>  b1.print();</p><p>  fs.close();

37、</p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  }void sanchu()</p

38、><p><b>  {</b></p><p>  system("cls");</p><p>  int numble;</p><p><b>  Book b1;</b></p><p>  cout<<("需要查找的圖書編號為

39、:")<<endl;</p><p>  cin>>numble;</p><p>  fstream fs("f1.txt",ios::in|ios::out);</p><p>  while(true)</p><p><b>  {</b></p>

40、<p>  fs.read((char *)&b1,sizeof(b1));</p><p>  if(numble==b1. getnumble())</p><p><b>  { </b></p><p>  cout<<"\n要刪除的數(shù)據(jù)信息:"<<endl;<

41、/p><p>  cout<<"圖書編號:"<<b1.getnumble()<<endl;</p><p>  cout<<"書名:"<<b1.getbookname()<<endl;</p><p>  cout<<"作者姓名:&quo

42、t;<<b1.getauthor()<<endl;</p><p>  cout<<"出版社:"<<b1.getpress()<<endl;</p><p>  cout<<"價格:"<<b1.getprice()<<endl;</p>&l

43、t;p>  cout<<("刪除成功!\n")<<endl;</p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  else</b></p><p>  cout&

44、lt;<("找不到要刪除的圖書編號!\n")<<endl;</p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  int main()</

45、p><p>  {int choice;</p><p>  while(true)</p><p><b>  {</b></p><p><b>  mu();</b></p><p>  cin>>choice;</p><p>  sw

46、itch(choice)</p><p><b>  {</b></p><p>  case 5: exit(0);</p><p>  case 1: set();</p><p><b>  break;</b></p><p>  case 2: dis();<

47、/p><p><b>  break;</b></p><p>  case 3: chaxun();</p><p><b>  break;</b></p><p>  case 4:sanchu();</p><p><b>  break;</b>&

48、lt;/p><p><b>  }</b></p><p><b>  }</b></p><p><b>  return 0;</b></p><p><b>  }</b></p><p><b>  心得與體會<

49、/b></p><p>  課設(shè)心得: **課設(shè)心得</p><p>  經(jīng)過這次課設(shè)對我之前的知識有所鞏固,復(fù)習了while語句構(gòu)成的循環(huán)。與此同時,復(fù)習了do-while語句和while語句之間的轉(zhuǎn)換。對類函數(shù)和構(gòu)造函數(shù)應(yīng)用加深不少,但是關(guān)于類部分知識還得有深一點的認識,關(guān)于類還有不少的薄弱環(huán)節(jié)還有待加強與了解.但

50、是最主要的是要加強上機的實驗與自己親手制作的能力。關(guān)于構(gòu)造函數(shù)的調(diào)用與重載運用還得熟練。</p><p>  在這次課設(shè)中有出現(xiàn)system("cls")代碼,關(guān)于這個代碼我查詢了一下知道system是一個庫函數(shù),是屬于c#語言中的一種函數(shù),cls表示清屏。還有就是這次課設(shè)中出現(xiàn)的多種文件的輸入與輸出ios::in︳ios::out;在對文件的操作過程中;了解大部分ASCII文件的操作,但是還

51、是過于生疏,得更多的練習。關(guān)于switch語句,課設(shè)結(jié)尾還可以進行適當?shù)母淖?,?jīng)過程序運行結(jié)果輸出也是一樣,讓我有了很好的認識?,F(xiàn)在,我對C++程序設(shè)計興趣越來越濃烈。最主要的是老師的授課方案很是周到,課設(shè)時我盡心的問老師不明白的問題老師都細心講解,這讓我信心大增。</p><p>  還有一點不得不提,就是我的搭檔,在我們完成這次課設(shè)中,團結(jié)一致,雖然有點意見分歧,但是最終問題得以完美解決。我們這次課設(shè)遇到各種

52、“代碼迷霧”,很多代碼不知道怎么寫,但是我們查閱各種資料和請教同學,最后解決各種難題,其中關(guān)于文件頭#include <stdlib.h>是什么意思我們請教了不少人.最終知道了這個頭文件包含了一些比較雜類的庫函數(shù),比如 system 等,其他頭文件中的函數(shù)類型很單一,但是這個頭文件不是,混合了多種類型的函數(shù)集合。</p><p>  這次課設(shè)收獲不少,以后會更努力的動手解決程序設(shè)計問題!</p&

53、gt;<p>  課設(shè)心得: ****課設(shè)心得</p><p>  俗話說“好的開始是成功的一半”。說起課程設(shè)計,我認為最重要的就是做好設(shè)計的預(yù)習,認真的研究老師給的題目,選一個自己有興趣的題目。其次,老師對實驗的講解要一絲不茍的去聽去想,因為只有都明白了,做起設(shè)計就會事半功倍,如果沒弄明白,就迷迷糊糊的去選題目做設(shè)計,到頭來一點收獲也沒有。最

54、后,要重視程序的模塊化,修改的方便,也要注重程序的調(diào)試,掌握其方法。雖然這次的課程設(shè)計算起來在實驗室的時間只有三天,不過因為我們都有自己的實驗板,所以在宿舍里做實驗的時間一定不止三天。</p><p>  通過此次課程設(shè)計,使我更加扎實的掌握了有關(guān)C++程序設(shè)計方面的知識,在設(shè)計過程中雖然遇到了一些問題,但經(jīng)過一次又一次的思考,一遍又一遍的檢查終于找出了原因所在,也暴露出了前期我在這方面的知識欠缺和經(jīng)驗不足。實

55、踐出真知,通過親自動手制作,使我們掌握的知識不再是紙上談兵。 在課程設(shè)計過程中,我們不斷發(fā)現(xiàn)錯誤,不斷改正,不斷領(lǐng)悟,不斷獲取。最終的檢測調(diào)試環(huán)節(jié),本身就是在踐行“過而能改,善莫大焉”的觀念。這次課程設(shè)計終于順利完成了,在設(shè)計中遇到了很多問題,最后在老師的指導(dǎo)下,終于解決了。在今后社會的發(fā)展和學習實踐過程中,一定要不懈努力,不能遇到問題就想到要退縮,一定要不厭其煩的發(fā)現(xiàn)問題所在,然后一一進行解決,只有這樣,才能成功的做成想做的事,才能

溫馨提示

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

評論

0/150

提交評論