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

下載本文檔

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

文檔簡(jiǎn)介

1、<p>  湖北汽車工業(yè)學(xué)院科技學(xué)院</p><p>  HUBEI UNIVERSITY OF AUTOMOTIVE TECHNOLOGY</p><p><b>  C語(yǔ)言程序設(shè)計(jì)</b></p><p><b>  課程實(shí)訓(xùn)報(bào)告</b></p><p>  課設(shè)題目: 設(shè)備管理系

2、統(tǒng) </p><p>  專 業(yè): 電子信息工程(汽車電子) </p><p>  班 級(jí): k1223-5 </p><p>  姓 名: </p><p>  成 績(jī)

3、: </p><p>  完成日期: 2013年1月4日-2013年1月11日</p><p>  指導(dǎo)教師: 胡 寧 亞 </p><p><b>  目 錄</b></p>

4、<p>  1.課程實(shí)訓(xùn)目的2</p><p><b>  2.需求分析2</b></p><p><b>  2.1要求2</b></p><p><b>  2.2任務(wù)描述2</b></p><p><b>  2.3運(yùn)行環(huán)境3</b&

5、gt;</p><p><b>  2.4開發(fā)工具3</b></p><p><b>  3.總體設(shè)計(jì)3</b></p><p>  3.1系統(tǒng)流設(shè)計(jì)3</p><p>  3.2系統(tǒng)模塊設(shè)計(jì)4</p><p><b>  4.詳細(xì)設(shè)計(jì)5</b>

6、;</p><p>  4.1數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)5</p><p>  4.2模塊接口設(shè)計(jì)6</p><p>  4.3 以下是幾個(gè)主要模塊的流程圖:7</p><p><b>  5.運(yùn)行結(jié)果8</b></p><p>  5.1主菜單界面:8</p><p>  5

7、.2輸入設(shè)備編號(hào)和名稱界面………………………………………………………...9</p><p>  5.3購(gòu)買設(shè)備界面:10</p><p>  5.4 報(bào)廢設(shè)備界面:10</p><p>  5.5查詢指定設(shè)備編號(hào)的購(gòu)買歷史界面11</p><p>  5.6查詢指定部門設(shè)備報(bào)廢歷史的界面…………………………………………………………12

8、</p><p>  5.7統(tǒng)計(jì)指定日期公司各設(shè)備可以使用的數(shù)量的界面…………………………………………13</p><p>  5.8保存信息界面…………………………………………………………………………………13</p><p>  5.9退出系統(tǒng)界面………………………… ……………………………………………………..14</p><p>  

9、6.程序調(diào)試與測(cè)試14</p><p><b>  7.編程體會(huì)14</b></p><p>  8.程序源代碼:15</p><p><b>  9.參考文獻(xiàn)29</b></p><p>  10.用戶使用手冊(cè)29</p><p><b>  1.課程實(shí)

10、訓(xùn)目的</b></p><p>  通過(guò)課程實(shí)訓(xùn),加深對(duì)結(jié)構(gòu)化程序設(shè)計(jì)思想的理解,能對(duì)系統(tǒng)功能進(jìn)行分析,并設(shè)計(jì)合理的模塊化結(jié)構(gòu)。</p><p>  通過(guò)課程實(shí)訓(xùn),進(jìn)一步掌握C語(yǔ)言中重要的數(shù)據(jù)結(jié)構(gòu)。掌握并熟練運(yùn)用指針、鏈表、結(jié)構(gòu)體、文件等數(shù)據(jù)結(jié)構(gòu)。</p><p>  通過(guò)課程實(shí)訓(xùn),提高程序開發(fā)能力,能運(yùn)用合理的控制流編寫清晰高效的程序。</p&g

11、t;<p>  通過(guò)課程實(shí)訓(xùn),培養(yǎng)C語(yǔ)言知識(shí)運(yùn)用和自學(xué)能力,真正的把課堂上獲得的知識(shí)運(yùn)用起來(lái),培養(yǎng)自己對(duì)程序編寫的興趣,并能獨(dú)立設(shè)計(jì)和實(shí)現(xiàn)一個(gè)小型系統(tǒng)。</p><p>  通過(guò)課程實(shí)訓(xùn),加強(qiáng)了自己的程序分析能力。</p><p><b>  2.需求分析</b></p><p><b>  2.1要求</b>

12、;</p><p>  遵循軟件開發(fā)過(guò)程的基本規(guī)范;能靈活應(yīng)用,初步具備運(yùn)用C程序解決實(shí)際問(wèn)題的能力。</p><p>  運(yùn)用結(jié)構(gòu)化程序設(shè)計(jì)方法,按照課程實(shí)訓(xùn)題目要求,完成包括需求分析、數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編寫代碼、調(diào)試和測(cè)試C程序等過(guò)程。</p><p>  學(xué)會(huì)利用數(shù)組、結(jié)構(gòu)體、鏈表進(jìn)行相關(guān)信息表示。</p><p>  

13、功能模塊劃分清晰,系統(tǒng)結(jié)構(gòu)圖符合功能操作要求,且有詳盡的功能描述</p><p>  各主要功能模塊有詳盡的流程圖及描述,用函數(shù)的形式實(shí)現(xiàn),且調(diào)用入口、功能、出口等關(guān)系正確。</p><p>  所設(shè)計(jì)的C程序較好的可讀性和可靠性;程序書寫風(fēng)格規(guī)范,注釋清晰。</p><p>  界面友好(良好的人機(jī)互交),凡需要輸入信息時(shí),都有較詳盡的提示信息,并對(duì)輸入信息有較完

14、善的值域分析。</p><p>  程序經(jīng)上機(jī)調(diào)試通過(guò),不應(yīng)出現(xiàn)語(yǔ)法型、功能型錯(cuò)誤,并獲得滿意的結(jié)果。</p><p>  學(xué)會(huì)通過(guò)各功能性測(cè)試用例測(cè)試程序的能力,盡可能避免原則性錯(cuò)誤的出現(xiàn)。</p><p>  掌握編寫、調(diào)試和測(cè)試C語(yǔ)言程序的基本技巧,充分理解結(jié)構(gòu)化程序設(shè)計(jì)的基本方法。</p><p>  C語(yǔ)言課程實(shí)訓(xùn)報(bào)告的內(nèi)容反應(yīng)實(shí)際

15、設(shè)計(jì)過(guò)程,且符合格式要求,無(wú)抄襲現(xiàn)象。</p><p><b>  2.2任務(wù)描述</b></p><p><b>  1、問(wèn)題:</b></p><p>  根據(jù)需求,該系統(tǒng)所應(yīng)包含的信息有以下一些:</p><p>  公司設(shè)備管理的基本信息:</p><p>  設(shè)備編

16、號(hào)10個(gè)、設(shè)備名稱10個(gè)、部門編號(hào)4個(gè)、部門名稱4個(gè)、購(gòu)買日期、購(gòu)買單價(jià)、購(gòu)買數(shù)量、購(gòu)買金額、報(bào)廢日期、報(bào)廢數(shù)量。</p><p>  根據(jù)需求,該系統(tǒng)所應(yīng)實(shí)現(xiàn)的功能有以下一些:</p><p>  1) 購(gòu)買:輸入設(shè)備編號(hào)、設(shè)備部門、購(gòu)買日期、設(shè)備數(shù)量、設(shè)備單價(jià),完成購(gòu)買功能。</p><p>  2) 報(bào)廢:輸入設(shè)備編號(hào)、設(shè)備部門、報(bào)廢日期、設(shè)備數(shù)量,完成報(bào)廢功

17、能。</p><p>  3) 查詢指定設(shè)備編號(hào)的購(gòu)買歷史。</p><p>  4) 查詢指定部門的設(shè)備報(bào)廢歷史。</p><p>  5) 統(tǒng)計(jì)指定日期公司各設(shè)備可以使用的數(shù)量。</p><p><b>  2.3運(yùn)行環(huán)境</b></p><p>  WindowsXP/7系統(tǒng)</p&g

18、t;<p>  VC++6.0編譯環(huán)境</p><p><b>  2.4開發(fā)工具</b></p><p><b>  C語(yǔ)言</b></p><p><b>  3.總體設(shè)計(jì)</b></p><p><b>  3.1系統(tǒng)流設(shè)計(jì)</b>&l

19、t;/p><p>  本系統(tǒng)的功能模塊如圖1所示,主要有以下模塊:</p><p>  主界面模塊:完成系統(tǒng)菜單的顯示</p><p>  功能選擇模塊:根據(jù)用戶的選擇,完成其相應(yīng)的功能</p><p>  設(shè)備購(gòu)買:完成用戶從界面輸入購(gòu)買信息,在系統(tǒng)中購(gòu)買定位,并將購(gòu)買金額累加到購(gòu)買總價(jià)格的功能。</p><p>  設(shè)

20、備報(bào)廢:完成用戶從界面輸入報(bào)廢信息,在系統(tǒng)中報(bào)廢定位,并將從設(shè)備總數(shù)減去報(bào)廢數(shù)量。</p><p>  指定設(shè)備編號(hào)的購(gòu)買歷史查詢:完成用戶從界面輸入查詢條件,在系統(tǒng)查詢符合條件的設(shè)備購(gòu)買信息,并在界面上顯示的功能。</p><p>  指定部門的設(shè)備報(bào)廢歷史查詢:完成用戶從界面輸入查詢條件,在系統(tǒng)查詢符合條件的設(shè)備報(bào)廢信息,并在界面上顯示的功能。</p><p>

21、  統(tǒng)計(jì)指定日期公司各設(shè)備可以使用的數(shù)量:完成用戶從界面輸入查詢條件,在系統(tǒng)查詢符合條件的設(shè)備記錄鏈表,并在界面上顯示的功能。</p><p><b>  3.2系統(tǒng)模塊設(shè)計(jì)</b></p><p>  課程名稱界面:構(gòu)造函數(shù)void auther(),實(shí)現(xiàn)課程實(shí)訓(xùn)名稱以及作者的顯示。</p><p>  系統(tǒng)歡迎界面:構(gòu)造函數(shù)void wel

22、come(),實(shí)現(xiàn)歡迎使用學(xué)生簡(jiǎn)歷管理系統(tǒng)的顯示。</p><p>  主菜單界面:構(gòu)造函數(shù)void menu(),實(shí)現(xiàn)系統(tǒng)主菜單的顯示。</p><p>  設(shè)備信息錄入:構(gòu)造函數(shù)void loadRec(),實(shí)現(xiàn)設(shè)備購(gòu)買、報(bào)廢記錄的錄入。</p><p>  購(gòu)買設(shè)備:構(gòu)造函數(shù)void buy(),實(shí)現(xiàn)對(duì)設(shè)備的購(gòu)買功能。</p><p>

23、  報(bào)廢設(shè)備:構(gòu)造函數(shù)void abandon (),實(shí)現(xiàn)對(duì)設(shè)備的報(bào)廢</p><p>  查詢購(gòu)買歷史:構(gòu)造函數(shù)int find_buyhistory(),實(shí)現(xiàn)對(duì)指定設(shè)備的購(gòu)買設(shè)備記錄的查詢。</p><p>  查詢報(bào)廢歷史:構(gòu)造函數(shù)int find_abahistory(),實(shí)現(xiàn)對(duì)指定部門的報(bào)廢設(shè)備記錄的查詢。</p><p>  統(tǒng)計(jì)指定日期可用設(shè)備:構(gòu)造函

24、數(shù)int find_equip(),實(shí)現(xiàn)對(duì)指定日期之前的可用設(shè)備。</p><p>  保存并退出:構(gòu)造函數(shù)void save(),實(shí)現(xiàn)對(duì)設(shè)備購(gòu)買、報(bào)廢記錄的保存。</p><p><b>  圖1系統(tǒng)功能模塊圖</b></p><p><b>  4.詳細(xì)設(shè)計(jì)</b></p><p><b&

25、gt;  4.1數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)</b></p><p>  根據(jù)系統(tǒng)要求,系統(tǒng)中需要保存的數(shù)據(jù)信息,其結(jié)構(gòu)如下:</p><p>  為此,先聲明類型為struct equipment、struct department、truct information、struct data的四個(gè)結(jié)構(gòu)體,其成員分別為設(shè)備和部門的編號(hào)以及名稱信息。然后通過(guò)對(duì)指針、鏈表、文件等數(shù)據(jù)結(jié)構(gòu)的操作,實(shí)

26、現(xiàn)對(duì)設(shè)備和部門的編號(hào)以及名稱信息的錄入,插入,存盤,查詢,等功能。定義的結(jié)構(gòu)體如下:</p><p><b>  定義如下:</b></p><p>  /*描述"保存信息"的鏈表類型*/</p><p>  typedef struct information</p><p><b>  

27、{</b></p><p>  DEPARTINFO depar;</p><p>  EQUIPINFO equip;</p><p>  struct information *next;</p><p><b>  }infor;</b></p><p>  /*描述"

28、部門信息"的結(jié)構(gòu)體類型*/</p><p>  typedef struct</p><p><b>  {</b></p><p>  char depart_ID[20];</p><p>  char depart_name[20];</p><p>  }DEPARTINFO;&

29、lt;/p><p>  /*描述"設(shè)備信息"的結(jié)構(gòu)體類型*/</p><p>  typedef struct</p><p><b>  {</b></p><p>  char equip_ID[20];</p><p>  char equip_name[20];</p

30、><p>  DATA buy_date;</p><p>  DATA aban_data;</p><p>  int b_number;</p><p>  int price;</p><p>  int a_number;</p><p>  }EQUIPINFO;</p>

31、<p>  /*描述"時(shí)間"的結(jié)構(gòu)體類型*/</p><p>  typedef struct</p><p><b>  {</b></p><p><b>  int year;</b></p><p>  int month;</p><p&g

32、t;<b>  int day;</b></p><p><b>  }DATA;</b></p><p><b>  4.2模塊接口設(shè)計(jì)</b></p><p>  所有函數(shù)模塊聲明如下:</p><p>  void auther();/*顯示課程名稱*/</p>

33、;<p>  void welcome();/*顯示歡迎界面*/</p><p>  void menu();/*主菜單函數(shù)*/</p><p>  void loadRec();/*設(shè)備信息錄入*/</p><p>  void buy();/*購(gòu)買設(shè)備*/</p><p>  void abandon ()/*報(bào)廢設(shè)備*/&

34、lt;/p><p>  int find_buyhistory();/*查詢購(gòu)買歷史*/ </p><p>  int find_abahistory();/*查詢報(bào)廢歷史*/</p><p>  int find_equip();/*統(tǒng)計(jì)指定日期可用設(shè)備*/</p><p>  void save();/*保存購(gòu)買報(bào)廢記錄*/</p>

35、;<p>  int sysTime();/*取系統(tǒng)時(shí)間*/</p><p>  int DAY();/*判斷該月天數(shù)*/</p><p>  void gotoxy(int x,int y);/*光標(biāo)函數(shù)*/</p><p><b>  主要模塊的實(shí)現(xiàn)</b></p><p>  系統(tǒng)以主函數(shù)void

36、main()為入口,首先通過(guò)system("color 0f");將文本顏色置為白色,背景顏色置為黑色。</p><p>  調(diào)用void auther()函數(shù),顯示課程實(shí)訓(xùn)名稱及作者信息。進(jìn)入主菜單界面。系統(tǒng)接收用戶輸入的選擇,調(diào)用相應(yīng)的函數(shù),進(jìn)入到下一級(jí)菜單進(jìn)行相關(guān)工作。</p><p>  4.3以下是主菜單的流程圖:</p><p>&l

37、t;b>  主菜單函數(shù):</b></p><p><b>  圖2 主函數(shù)流程圖</b></p><p><b>  5.運(yùn)行結(jié)果</b></p><p><b>  5.1主菜單界面:</b></p><p><b>  主界面:</b>

38、;</p><p>  根據(jù)系統(tǒng)要求,設(shè)計(jì)一個(gè)字符界面,顯示系統(tǒng)的菜單,為了體現(xiàn)友好性,將在每個(gè)菜單前顯示該菜單項(xiàng)對(duì)應(yīng)的數(shù)字</p><p>  用戶輸入菜單項(xiàng)前面的數(shù)字,主菜單消失,進(jìn)入該模塊的相應(yīng)界面,進(jìn)行相應(yīng)的操作,完成后,回到主界面。</p><p><b>  輸入的主界面:</b></p><p><

39、b>  圖5主菜單界面</b></p><p>  輸入功能選擇,系統(tǒng)自動(dòng)進(jìn)入相應(yīng)功能界面。</p><p><b>  5.2歡迎界面</b></p><p>  圖6 輸入設(shè)備編號(hào)和名稱的界面:</p><p>  5.3購(gòu)買設(shè)備界面:</p><p><b>  

40、圖7購(gòu)買設(shè)備界面</b></p><p>  5.4報(bào)廢設(shè)備界面:</p><p><b>  圖8報(bào)廢設(shè)備界面 </b></p><p>  5.5查詢指定設(shè)備編號(hào)的購(gòu)買歷史界面:</p><p>  圖9查詢指定設(shè)備編號(hào)的購(gòu)買歷史界面</p><p>  5.6查詢指定部門設(shè)備報(bào)廢

41、歷史的界面</p><p>  圖10查詢指定部門設(shè)備報(bào)廢歷史的界面</p><p>  5.7統(tǒng)計(jì)指定日期公司各設(shè)備可以使用的數(shù)量的界面:</p><p><b>  6.程序調(diào)試與測(cè)試</b></p><p>  各個(gè)模塊在調(diào)試與分析的過(guò)程中往往會(huì)碰到一些錯(cuò)誤和警告,從而導(dǎo)致了程序的無(wú)法正確運(yùn)行,這時(shí)候我們往往是從錯(cuò)

42、誤開始分析,然后分步調(diào)試程序。</p><p><b>  7.編程體會(huì)</b></p><p>  通過(guò)本學(xué)期實(shí)訓(xùn)課與C語(yǔ)言課相結(jié)合的學(xué)習(xí)模式,以上機(jī)實(shí)驗(yàn)操作為主,平時(shí)理論課程相結(jié)合的特點(diǎn),讓我對(duì)C語(yǔ)言的認(rèn)識(shí)更加深刻,更加深了我對(duì)語(yǔ)言的理解和運(yùn)用能力。在學(xué)習(xí)期間遇到的問(wèn)題先翻看書本再查找資料使我更深入的接觸和了解到更多的C語(yǔ)言知識(shí)。平時(shí)上理論課老師就強(qiáng)調(diào)C語(yǔ)言知識(shí)的

43、重要性和實(shí)用性,學(xué)習(xí)的過(guò)程中也慢慢覺得要想把C語(yǔ)言學(xué)好必須要花費(fèi)大量的精力和時(shí)間。就像這次的最后的大實(shí)訓(xùn),一個(gè)人就一道題,卻花費(fèi)了三四天的時(shí)間去做,先自己做個(gè)框架,然后再一步步做函數(shù),不僅請(qǐng)教同學(xué)幫忙,還請(qǐng)教了老師幫助我改錯(cuò),雖然最后完成了任務(wù),但是程序還做得不是很好,程序運(yùn)行的不是很好,有些功能沒有完全實(shí)現(xiàn)。</p><p>  在這幾天的實(shí)訓(xùn)中,讓我認(rèn)識(shí)到C語(yǔ)言的實(shí)用性,縱觀同學(xué)們做的題目,讓C語(yǔ)言實(shí)現(xiàn)大大小

44、小不同的功能,這就是C語(yǔ)言的應(yīng)用廣泛性。同時(shí)還得出一個(gè)結(jié)論:理論知識(shí)必須通過(guò)實(shí)踐應(yīng)用才能實(shí)現(xiàn)其價(jià)值!有些東西在理論方面以為學(xué)會(huì)了,但真正到應(yīng)用的時(shí)候才發(fā)現(xiàn)是兩回事,看書的時(shí)候我以為函數(shù)功能很簡(jiǎn)單,但是我在用的時(shí)候,卻漏洞百出,不是這錯(cuò)就是那錯(cuò),找老師好幾遍才改過(guò)來(lái)。學(xué)習(xí)C語(yǔ)言就需要縝密的思維,良好的習(xí)慣,這樣才能把C語(yǔ)言編的又快又好!!! </p><p><b>  8.程序源代碼:</b>

45、;</p><p>  #include <stdio.h></p><p>  #include <string.h></p><p>  #include <malloc.h></p><p>  #include <stdlib.h></p><p>  #incl

46、ude <time.h></p><p>  #include <conio.h></p><p>  #include <windows.h></p><p>  #define LEN sizeof(infor)</p><p>  /*描述"時(shí)間"的結(jié)構(gòu)體類型*/</p>

47、;<p>  typedef struct</p><p><b>  {</b></p><p><b>  int year;</b></p><p>  int month;</p><p><b>  int day;</b></p><

48、;p><b>  }DATA;</b></p><p>  /*描述"設(shè)備信息"的結(jié)構(gòu)體類型*/</p><p>  typedef struct</p><p><b>  {</b></p><p>  char equip_ID[10];</p><

49、;p>  char equip_name[10];</p><p>  DATA buy_date;</p><p>  DATA aban_data;</p><p>  int b_number;</p><p>  int price;</p><p>  int a_number;</p>

50、<p>  }EQUIPINFO;</p><p>  /*描述"部門信息"的結(jié)構(gòu)體類型*/</p><p>  typedef struct</p><p><b>  {</b></p><p>  char depart_ID[30];</p><p>  ch

51、ar depart_name[20];</p><p>  }DEPARTINFO;</p><p>  /*描述"保存信息"的鏈表類型*/</p><p>  typedef struct information</p><p><b>  {</b></p><p>  D

52、EPARTINFO depar;</p><p>  EQUIPINFO equip;</p><p>  struct information *next;</p><p><b>  }infor;</b></p><p>  infor *p1,*p2,*head;</p><p>  in

53、t flag=-1;</p><p><b>  /*函數(shù)聲明*/</b></p><p>  void welcome();</p><p>  void auther();</p><p>  int buy();</p><p>  int abandon();</p><

54、;p>  int find_buyhistory();</p><p>  int find_abahistory();</p><p>  int sysTime();</p><p>  int DAY(int year,int month);</p><p>  int find_equip();</p><p

55、>  void loadRec();</p><p>  void save();</p><p>  void gotoxy(int x,int y);</p><p><b>  /*主函數(shù)*/</b></p><p>  int main()</p><p><b>  {&

56、lt;/b></p><p>  system("color 0a");</p><p>  auther();/*軟件名稱及開發(fā)者顯示*/</p><p>  welcome();/*歡迎界面顯示*/</p><p>  loadRec();</p><p><b>  while

57、(1)</b></p><p><b>  {</b></p><p>  switch(menu())</p><p><b>  {</b></p><p>  system("cls");</p><p>  case 1:buy();b

58、reak;</p><p>  case 2:abandon();getchar();break;</p><p>  case 3:find_buyhistory();break;</p><p>  case 4:find_abahistory();break;</p><p>  case 5:find_equip();break;&l

59、t;/p><p>  case 0:save();exit(0);break;</p><p><b>  default:{</b></p><p>  printf("\n選擇錯(cuò)誤,請(qǐng)按主菜單提示輸入您的正確選擇(0~4)\n");</p><p>  printf("按任意鍵返回繼續(xù):&q

60、uot;);</p><p>  rewind(stdin);/*清空緩沖區(qū)*/</p><p><b>  getch();</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  

61、}</b></p><p><b>  return 0;</b></p><p><b>  }</b></p><p><b>  /*菜單*/</b></p><p>  int menu()</p><p><b>  {&

62、lt;/b></p><p>  int choice;</p><p>  system("cls");</p><p>  gotoxy(33,5);printf("主菜單\n\n");Sleep(500);</p><p>  gotoxy(33,7);printf("1.購(gòu)買設(shè)

63、備\n\n");Sleep(500);</p><p>  gotoxy(33,9);printf("2.報(bào)廢設(shè)備\n\n");Sleep(500);</p><p>  gotoxy(33,11);printf("3.查詢?cè)O(shè)備購(gòu)買歷史\n\n");Sleep(500);</p><p>  gotoxy(33

64、,13);printf("4.查詢?cè)O(shè)備報(bào)廢歷史\n\n");Sleep(500);</p><p>  gotoxy(33,15);printf("5.統(tǒng)計(jì)指定日期公司各設(shè)備可以使用的數(shù)量\n\n");Sleep(500);</p><p>  gotoxy(33,17);printf("0.保存并退出\n\n\n");Sl

65、eep(500);</p><p>  gotoxy(33,19);printf("請(qǐng)輸入您的選擇(0~5):");Sleep(500);</p><p>  rewind(stdin);/*清空緩沖區(qū)*/</p><p>  choice=-1;</p><p>  scanf("%d",&

66、choice);</p><p>  rewind(stdin);</p><p>  return choice;/*返回用戶的選擇*/</p><p><b>  }</b></p><p>  /*軟件名稱及開發(fā)者顯示*/</p><p>  void auther()</p>

67、<p><b>  {</b></p><p>  system("cls");</p><p>  printf("\n\n\n\n\n\n\n\t\t\t 軟件名稱:設(shè)備管理系統(tǒng)\n\n");</p><p>  printf("\t\t\t 學(xué)生:k1223-5

68、 \n\n");</p><p>  printf("\t\t\t 指導(dǎo)老師:胡寧亞\n\n");</p><p>  printf("\t\t\t 時(shí)間:%ld\n\n",sysTime());</p><p>  printf("\t\t\t 按回任意鍵進(jìn)入系統(tǒng):");

69、</p><p><b>  getch();</b></p><p><b>  }</b></p><p>  /*歡迎界面顯示*/</p><p>  void welcome()</p><p><b>  {</b></p>&l

70、t;p>  int i,x,y;</p><p><b>  char ch;</b></p><p>  system("cls");</p><p>  for(i=0;i<500;i++)</p><p><b>  {</b></p><

71、p>  x=rand()%80;</p><p>  y=rand()%25;</p><p>  ch=rand()%26+65;</p><p>  gotoxy(x,y);</p><p>  printf("%c",ch);</p><p><b>  Sleep(1);&l

72、t;/b></p><p><b>  }</b></p><p>  Sleep(1500);</p><p>  system("cls");</p><p>  printf("\n\n\n\n\n\t\t\t 歡迎使用設(shè)備管理系統(tǒng)!");</p>

73、;<p><b>  getch();</b></p><p><b>  }</b></p><p>  int buy(FILE *fp)</p><p><b>  {</b></p><p>  char choice='y';</p

74、><p><b>  infor *p;</b></p><p>  time_t rawtime;</p><p>  struct tm *timeinfo;</p><p>  time(&rawtime);</p><p>  timeinfo=localtime(&rawti

75、me);</p><p>  if(flag==1)</p><p><b>  {</b></p><p>  printf("請(qǐng)輸入部門編號(hào) 部門名稱 設(shè)備編號(hào) 設(shè)備名稱 設(shè)備數(shù)量 設(shè)備價(jià)格:\n"); </p><p>  loop1:p=head;</p><p> 

76、 while(p->next!=NULL)</p><p><b>  {</b></p><p>  p=p->next;</p><p><b>  }</b></p><p>  p1=(infor *)malloc(LEN);//為新節(jié)點(diǎn)分配空間 </p><

77、;p>  scanf("%s%s%s%s%d%d",p1->depar.depart_ID,p1->depar.depart_name,p1->equip.equip_ID,p1->equip.equip_name,&p1->equip.b_number,&p1->equip.price);</p><p>  p1->equip

78、.a_number=0;</p><p>  p1->equip.buy_date.year=1900+timeinfo->tm_year;</p><p>  p1->equip.buy_date.month=1+timeinfo->tm_mon;</p><p>  p1->equip.buy_date.day=timeinfo-&

79、gt;tm_mday;</p><p>  printf("花費(fèi)了%d元\n",p1->equip.price*p1->equip.b_number);</p><p>  rewind(stdin);</p><p>  printf("是否繼續(xù)(y/n)?");</p><p>  sc

80、anf("%c",&choice); </p><p>  p->next=p1;</p><p>  p1->next=NULL;</p><p>  if(choice=='y'||choice=='Y') goto loop1;</p><p><b> 

81、 }</b></p><p><b>  else</b></p><p><b>  {</b></p><p>  head=(infor *)malloc(LEN);</p><p><b>  p=head;</b></p><p>

82、<b>  flag=1;</b></p><p><b>  do</b></p><p><b>  {</b></p><p>  p1=(infor *)malloc(LEN);//為新節(jié)點(diǎn)分配空間 </p><p>  p1->next=NULL;</p

83、><p>  printf("請(qǐng)輸入部門編號(hào) 部門名稱 設(shè)備編號(hào) 設(shè)備名稱 設(shè)備數(shù)量 設(shè)備價(jià)格:\n"); </p><p>  scanf("%s%s%s%s%d%d",p1->depar.depart_ID,p1->depar.depart_name,p1->equip.equip_ID,</p><p>

84、  p1->equip.equip_name,&p1->equip.b_number,&p1->equip.price);</p><p>  p1->equip.a_number=0;</p><p>  p1->equip.buy_date.year=1900+timeinfo->tm_year;</p><p&g

85、t;  p1->equip.buy_date.month=1+timeinfo->tm_mon;</p><p>  p1->equip.buy_date.day=timeinfo->tm_mday;</p><p>  printf("花費(fèi)了%d元\n",p1->equip.price*p1->equip.b_number);<

86、;/p><p>  rewind(stdin);</p><p>  printf("是否繼續(xù)(y/n)?");</p><p>  scanf("%c",&choice); </p><p>  p->next=p1;</p><p><b>  p=p1;

87、</b></p><p>  }while((choice=='y'||choice=='Y'));</p><p><b>  }</b></p><p><b>  }</b></p><p>  int abandon()</p>&l

88、t;p><b>  {</b></p><p>  if(flag==1)</p><p><b>  {</b></p><p>  int a,c,i=0;</p><p>  DATA time1,time2;</p><p>  char d_ID[20],e_

89、ID[20];</p><p>  infor *p,*h;</p><p>  system("cls");</p><p>  printf("請(qǐng)輸入要報(bào)廢設(shè)備的部門編號(hào)、設(shè)備編號(hào)\n");</p><p>  scanf("%s%s",d_ID,e_ID);</p>

90、<p>  p1=head->next;</p><p>  while(p1!=NULL)</p><p><b>  {</b></p><p>  if(strcmp(e_ID,p1->equip.equip_ID)==0&&strcmp(d_ID,p1->depar.depart_ID)=

91、=0&&p1->equip.b_number>0)</p><p><b>  {</b></p><p><b>  i++;</b></p><p>  a=p1->equip.b_number;</p><p>  time2=p1->equip.b

92、uy_date;</p><p><b>  h=p1;</b></p><p><b>  }</b></p><p>  p1=p1->next;</p><p><b>  }</b></p><p><b>  if(i==0)&

93、lt;/b></p><p><b>  {</b></p><p>  printf("設(shè)備%s不存在",e_ID);getch();</p><p><b>  return ;</b></p><p><b>  }</b></p>

94、<p><b>  else</b></p><p><b>  {</b></p><p><b>  do</b></p><p><b>  {</b></p><p>  system("cls");</p&g

95、t;<p>  printf("請(qǐng)輸入要報(bào)廢時(shí)間的年(>=%d )\n",time2.year);</p><p>  scanf("%d",&time1.year);</p><p>  if(time1.year<time2.year) </p><p><b>  contin

96、ue;</b></p><p>  else if(time1.year==time2.year)</p><p><b>  {</b></p><p><b>  do</b></p><p><b>  {</b></p><p>  

97、printf("請(qǐng)輸入要報(bào)廢時(shí)間的月(%d<=month<=12)\n",time2.month);</p><p>  scanf("%d",&time1.month);rewind(stdin);</p><p>  }while(time1.month>12||time1.month<1);</p>

98、<p>  if(time1.month<time2.month) continue;</p><p>  else if(time1.month==time2.month)</p><p><b>  {</b></p><p><b>  do</b></p><p><

99、b>  {</b></p><p>  printf("請(qǐng)輸入要報(bào)廢時(shí)間的日(%d<=day<=%d)\n",time2.day,DAY(time1.year,time1.month));</p><p>  scanf("%d",&time1.day);rewind(stdin);</p><

100、;p>  }while(time1.day<=0||time1.day>DAY(time1.year,time1.month));</p><p>  if(time1.day<time2.day) continue;</p><p><b>  else </b></p><p><b>  {</b&

101、gt;</p><p>  goto loop;</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  else </b></p><p><b>  {</b></p&g

102、t;<p><b>  do</b></p><p><b>  {</b></p><p>  printf("請(qǐng)輸入要報(bào)廢時(shí)間的日(1<=day<=%d)\n",DAY(time1.year,time1.month));</p><p>  scanf("%d&q

103、uot;,&time1.day);rewind(stdin);</p><p>  }while(time1.day<=0||time1.day>DAY(time1.year,time1.month));</p><p>  goto loop;</p><p><b>  }</b></p><p>

104、;<b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p><b>  do</b></p><p><b>  {</b></p><p>

105、  printf("請(qǐng)輸入要報(bào)廢時(shí)間的月(1<=month<=12)\n");</p><p>  scanf("%d",&time1.month);rewind(stdin);</p><p>  }while(time1.month>12||time1.month<1);</p><p>&

106、lt;b>  do</b></p><p><b>  {</b></p><p>  printf("請(qǐng)輸入要報(bào)廢時(shí)間的日(1<=day<=%d)\n",DAY(time1.year,time1.month));</p><p>  scanf("%d",&time

107、1.day);rewind(stdin);</p><p>  }while(time1.day<=0||time1.day>DAY(time1.year,time1.month));</p><p>  goto loop;</p><p><b>  }</b></p><p>  }while(1);&

108、lt;/p><p><b>  loop:do</b></p><p><b>  {</b></p><p>  printf("請(qǐng)輸入報(bào)廢臺(tái)數(shù)(1~%d)\n",a);</p><p>  scanf("%d",&c);rewind(stdin);&l

109、t;/p><p>  }while(c>a||c<=0);</p><p>  p1=head->next;</p><p>  while(p1!=NULL)</p><p><b>  {</b></p><p>  if(strcmp(e_ID,p1->equip.equ

110、ip_ID)==0&&strcmp(d_ID,p1->depar.depart_ID)==0&&p1->equip.b_number>0) </p><p>  p1->equip.b_number-=c;</p><p>  p1=p1->next;</p><p><b>  }</b

111、></p><p><b>  p=head;</b></p><p>  while(p->next!=NULL)</p><p>  p=p->next;</p><p>  p2=(infor *)malloc(LEN);//為新節(jié)點(diǎn)分配空間 </p><p><b

112、>  p2=h;</b></p><p>  strcpy(p2->depar.depart_ID,d_ID);</p><p>  strcpy(p2->equip.equip_ID,e_ID);</p><p>  p2->equip.a_number=c;</p><p>  p2->equip

113、.aban_data=time1;</p><p>  p2=p2->next;</p><p>  printf("報(bào)廢成功");</p><p><b>  }</b></p><p><b>  }</b></p><p><b> 

114、 else</b></p><p>  printf("無(wú)設(shè)備記錄,請(qǐng)先購(gòu)買設(shè)備\n");getch();</p><p><b>  }</b></p><p>  int find_buyhistory()</p><p><b>  {</b></p>

115、;<p>  if(flag==1)</p><p><b>  {</b></p><p><b>  int i=0;</b></p><p>  char e_ID[20];</p><p>  system("cls");</p><p&

116、gt;  printf("\n\n\n\n\n\t\t\t 請(qǐng)輸入要查詢?cè)O(shè)備的設(shè)備編號(hào)\n");</p><p>  scanf("%s",e_ID);</p><p>  p1=head->next;</p><p>  while(p1!=NULL)</p><p><b>  

117、{</b></p><p>  if(strcmp(e_ID,p1->equip.equip_ID)==0&&p1->equip.b_number>0)</p><p><b>  i++;</b></p><p>  p1=p1->next;</p><p><

118、;b>  }</b></p><p><b>  if(i!=0)</b></p><p><b>  {</b></p><p>  p1=head->next;</p><p>  while(p1!=NULL)</p><p><b>

119、  {</b></p><p>  if(strcmp(e_ID,p1->equip.equip_ID)==0&&p1->equip.b_number>0) </p><p>  printf("部門編號(hào): %s\n部門名稱: %s\n設(shè)備編號(hào): %s\n設(shè)備名稱: %s\n購(gòu)買臺(tái)數(shù):%d\n購(gòu)買時(shí)間: %d-%d-%d\n\n&qu

120、ot;,</p><p>  p1->depar.depart_ID,p1->depar.depart_name,p1->equip.equip_ID,p1->equip.equip_name,</p><p>  p1->equip.b_number,p1->equip.buy_date.year,p1->equip.buy_date.month

121、,</p><p>  p1->equip.buy_date.day); </p><p>  p1=p1->next;</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  else</b&g

122、t;</p><p>  printf("無(wú)%s的購(gòu)買歷史",e_ID);</p><p><b>  getch();</b></p><p><b>  }</b></p><p><b>  else</b></p><p> 

123、 printf("無(wú)設(shè)備記錄,請(qǐng)先購(gòu)買設(shè)備\n");getch();</p><p><b>  }</b></p><p>  int find_abahistory()</p><p><b>  {</b></p><p>  if(flag==1)</p>

124、<p><b>  {</b></p><p><b>  int i=0;</b></p><p>  char d_ID[20];</p><p>  system("cls");</p><p>  printf("請(qǐng)輸入要查詢的部門編號(hào)\n"

125、);</p><p>  scanf("%s",d_ID);</p><p>  p1=head->next;</p><p>  while(p1!=NULL)</p><p><b>  {</b></p><p>  if(strcmp(d_ID,p1->de

126、par.depart_ID)==0&&p1->equip.a_number>0) </p><p><b>  i++;</b></p><p>  p1=p1->next;</p><p><b>  }</b></p><p><b>  if(i!=

127、0)</b></p><p><b>  {</b></p><p>  p1=head->next;</p><p>  while(p1!=NULL)</p><p><b>  {</b></p><p>  if(strcmp(d_ID,p1->

128、;depar.depart_ID)==0&&p1->equip.a_number>0) </p><p><b>  {</b></p><p>  printf("部門編號(hào): %s\n部門名稱: %s\n設(shè)備編號(hào): %s\n設(shè)備名稱: %s\n報(bào)廢臺(tái)數(shù): %d\n報(bào)廢日期: %d-%d-%d\n",p1->dep

129、ar.depart_ID,p1->depar.depart_name,p1->equip.equip_ID,p1->equip.equip_name,p1->equip.a_number,p1->equip.aban_data.year,p1->equip.aban_data.month,p1->equip.aban_data.day); </p><p><b&g

130、t;  }</b></p><p>  p1=p1->next;</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  else</b></p><p>  printf("

131、;無(wú)%s部門的報(bào)廢歷史",d_ID);</p><p><b>  getch();</b></p><p><b>  }</b></p><p><b>  else</b></p><p>  printf("無(wú)設(shè)備記錄,請(qǐng)先購(gòu)買設(shè)備\n")

132、;getch();</p><p><b>  }</b></p><p>  int find_equip()</p><p><b>  {</b></p><p>  if(flag==1)</p><p><b>  {</b></p>

133、;<p><b>  int i=0;</b></p><p>  unsigned long day;</p><p>  system("cls");</p><p>  printf("請(qǐng)輸入要查詢的日期\n");</p><p>  scanf("%

134、ld",&day);</p><p>  p1=head->next;</p><p>  while(p1!=NULL)</p><p><b>  {</b></p><p>  if((p1->equip.aban_data.year*10000+p1->equip.aban_d

135、ata.month*100+p1->equip.aban_data.day)>=day&&p1->equip.b_number>0) </p><p><b>  {</b></p><p>  printf("部門編號(hào): %s\n部門名稱: %s\n設(shè)備編號(hào): %s\n設(shè)備名稱: %s\n臺(tái)數(shù): %d%\n\n&qu

136、ot;,p1->depar.depart_ID,p1->depar.depart_name,p1->equip.equip_ID,p1->equip.equip_name,p1->equip.b_number); </p><p><b>  i++;</b></p><p><b>  }</b></p>

137、;<p>  p1=p1->next;</p><p><b>  }</b></p><p><b>  getch();</b></p><p><b>  if(i==0)</b></p><p>  printf("\n\n\n\t\t\t

138、%ld之后無(wú)可用設(shè)備",day);</p><p><b>  }</b></p><p><b>  else</b></p><p>  printf("無(wú)設(shè)備記錄,請(qǐng)先購(gòu)買設(shè)備\n");getch();</p><p><b>  }</b>

139、</p><p>  int DAY(int year,int month)</p><p><b>  {</b></p><p>  if(month==1||month==3||month==5||month==7||month==8||month==10||month==12)</p><p>  return

140、31;</p><p>  else if(month==4||month==6||month==9||month==11)</p><p>  return 30;</p><p><b>  else</b></p><p><b>  {</b></p><p>  i

141、f((year%4==0&&year%100!=0)||(year%400==0))</p><p>  return 29;</p><p><b>  else</b></p><p>  return 28;</p><p><b>  }</b></p><

142、;p><b>  }</b></p><p>  int sysTime()</p><p><b>  {</b></p><p>  unsigned long day;</p><p>  time_t rawtime;</p><p>  struct tm *

143、timeinfo;</p><p>  time(&rawtime);</p><p>  timeinfo=localtime(&rawtime);</p><p>  returnday=(1900+timeinfo->tm_year)*10000+(1+timeinfo->tm_mon)*100+timeinfo->tm_m

溫馨提示

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

評(píng)論

0/150

提交評(píng)論