版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 課 程 設(shè) 計</b></p><p> 設(shè)計題目: 電子詞典 </p><p><b> 課程設(shè)計任務(wù)書</b></p><p> 一、課程設(shè)計的原始資料及依據(jù)</p><p> 在計算機中建立有限規(guī)模的電子英漢詞典,利用程序?qū)崿F(xiàn)電子英漢詞典的查找、增加
2、、刪除、修改等功能。查閱有關(guān)資料,進一步理解程序設(shè)計模塊化的思想,并利用此思想編寫一個簡單的電子詞典。通過本設(shè)計可以加深理解利用程序設(shè)計思想開發(fā)一個系統(tǒng)的整個流程,提高分析問題、解決問題和實際動手的能力。</p><p> 二、課程設(shè)計主要內(nèi)容及要求</p><p> 1.認(rèn)真閱讀資料,掌握程序設(shè)計模塊化的思想。</p><p> 2.要求在設(shè)計的過程中,建立
3、清晰的層次結(jié)構(gòu)。</p><p> 3.畫出主要的功能結(jié)構(gòu)圖和主要模塊的流程圖。</p><p><b> 4.實現(xiàn)功能:</b></p><p><b> ?、挪檎覇卧~。</b></p><p><b> ⑵增加單詞。</b></p><p>&
4、lt;b> ?、侨f年歷</b></p><p><b> ?、刃薷膯卧~。</b></p><p><b> ?、娠@示單詞。</b></p><p><b> ?、时4鎲卧~。</b></p><p><b> ?、朔祷?lt;/b></p&
5、gt;<p><b> ?、處椭?lt;/b></p><p><b> ?、屯顺?lt;/b></p><p> 5. 要求操作簡單,用戶界面友好。</p><p> 6. 運行程序,檢查結(jié)果是否和理論值一致。</p><p> 7. 環(huán)境使用Windows,Turbo C環(huán)境。</
6、p><p> 三、對課程設(shè)計說明書撰寫內(nèi)容、格式、字?jǐn)?shù)的要求</p><p> 1.課程設(shè)計說明書是體現(xiàn)和總結(jié)課程設(shè)計成果的載體,主要內(nèi)容包括:設(shè)計題目、設(shè)計目的、設(shè)備器材、設(shè)計原理及內(nèi)容、設(shè)計步驟、遇到的問題及解決方法、設(shè)計總結(jié)、參考文獻(xiàn)等。一般不應(yīng)少于3000字。</p><p> 2.在適當(dāng)位置配合相應(yīng)的實驗原理圖、功能模塊圖、算法流程圖等圖表進行說明。應(yīng)做
7、到文理通順,內(nèi)容正確完整,書寫工整,裝訂整齊。</p><p> 3.設(shè)計總結(jié)部分主要寫本人完成工作簡介以及自己的設(shè)計體會,包括通過課程設(shè)計學(xué)到了什么,哪里遇到了困難,解決的辦法以及今后的目標(biāo)。</p><p> 4.課程設(shè)計說明書手寫或打印均可。手寫要用學(xué)校統(tǒng)一的課程設(shè)計用紙,用黑或藍(lán)黑墨水工整書寫;打印時采用A4紙,頁邊距均為20mm,正文采用宋體小四號字,行間距18磅。文中大標(biāo)題
8、采用黑體小三號字,一級節(jié)標(biāo)題采用黑體四號字,二級節(jié)標(biāo)題采用黑體小四號字,表題與圖題采用宋體五號字。</p><p> 5.課程設(shè)計說明書裝訂順序為:封面、任務(wù)書、成績評定表、目錄、正文、參考文獻(xiàn)。</p><p> 四、設(shè)計完成后應(yīng)提交成果的種類、數(shù)量、質(zhì)量等方面的要求</p><p> 1.完成“任務(wù)書”中指定的功能,運行結(jié)果正確。</p>&
9、lt;p> 2.課程設(shè)計說明書。</p><p><b> 五、時間進度安排</b></p><p> 六、主要參考資料(文獻(xiàn))</p><p> [1]譚浩強 編著 《C程序設(shè)計》(第二版)。北京:清華大學(xué)出版社,2005</p><p> [2]吳文虎 編著 《程序設(shè)計基礎(chǔ)》(第3版)。 北京:清華大
10、學(xué)出版社,2005</p><p> [3] 譚浩強 編著 《C程序設(shè)計》(第三版)。北京:清華大學(xué)出版社,2006</p><p> [4]C編寫組 常用C語言用法速查手冊。北京:龍門書局,1995 </p><p> [5]Herbert Schildt 著 王曦若、李沛譯 ANSI C標(biāo)準(zhǔn)詳解。北京:電子工業(yè)出版社,1994</p><
11、;p> [6]鄭莉 董淵 張瑞豐 編著 《C++語言程序設(shè)計》(第3版)。 北京:清華大學(xué)出版社,2006</p><p> [7] Andrew Koenig編著C語言陷阱與缺陷。Andrew Koenig人民郵電出版社 2003</p><p> [8] (美)林登(Peter Van Der Linden)編著C語言專家編程 人民郵電出版社 2002</p>
12、;<p><b> 摘要</b></p><p> 計算機科學(xué)與技術(shù)是一門實用性很強、發(fā)展極其迅速的面向廣大社會的技術(shù)學(xué)科,它建立在數(shù)學(xué)、電子學(xué) (特別是微電子學(xué))、磁學(xué)、光學(xué)、精密機械等多門學(xué)科的基礎(chǔ)之上。但是,它并不是簡單地應(yīng)用某些學(xué)科的知識,而是經(jīng)過高度綜合形成一整套有關(guān)信息表示、變換、存儲、處理、控制和利用的理論、方法和技術(shù)。作為新世紀(jì)的大學(xué)生,應(yīng)當(dāng)站在時代發(fā)展的前
13、列,掌握現(xiàn)代科學(xué)技術(shù)知識,調(diào)整自己的知識結(jié)構(gòu)和能力結(jié)構(gòu),以適應(yīng)社會發(fā)展的要求。新世紀(jì)需要具有豐富的現(xiàn)代科學(xué)知識,能夠獨立解決面臨的任務(wù),充滿活力,有創(chuàng)新意識的新型人才。</p><p> C語言是一種計算機程序設(shè)計語言。它既有高級語言的特點,又具有匯編語言的特點。它可以作為系統(tǒng)設(shè)計語言,編寫工作系統(tǒng)應(yīng)用程序,也可以作為應(yīng)用程序設(shè)計語言,編寫不依賴計算機硬件的應(yīng)用程序。因此,它的應(yīng)用范圍廣泛。C語言對操作系統(tǒng)和系
14、統(tǒng)使用程序以及需要對硬件進行操作的場合,用C語言明顯優(yōu)于其它解釋型高級語言,有一些大型應(yīng)用軟件也是用C語言編寫的。C語言具有繪圖能力強,可移植性,并具備很強的數(shù)據(jù)處理能力,因此適于編寫系統(tǒng)軟件,三維,二維圖形和動畫。它是數(shù)值計算的高級語言?,F(xiàn)在大多數(shù)的高校都把C語言作為第一門計算機語言進行教學(xué),這是可行的,學(xué)生是能夠?qū)W習(xí)好的。</p><p> 在學(xué)習(xí)中,先要學(xué)習(xí)程序設(shè)計課程的目的掌握設(shè)計程序的思路,學(xué)習(xí)會用計
15、算機語言編寫程序,以實現(xiàn)所需要處理的任務(wù)。要正確處理算法與語法的關(guān)系,算法是程序的核心、是靈魂,語法是外殼、是工具。不應(yīng)把學(xué)習(xí)重點放在語法規(guī)則上,語法是重要的,不掌握語法規(guī)則就無法編寫出正確的程序。一定要把重點放在解題的思路上,通過思考,和大量的閱讀,來構(gòu)造一個完整的程序。請記?。褐匾氖菍W(xué)會編程,而不是背語法。</p><p> 其次,主要是學(xué)習(xí)程序設(shè)計的方法,進行程序設(shè)計的基本訓(xùn)練,大多數(shù)的學(xué)生應(yīng)該把精力放
16、在最基本,最常用的內(nèi)容上,學(xué)好基本功。</p><p> 大學(xué)生是社會的一個特殊群體,是指接受過大學(xué)教育的人,作為社會新技術(shù)、新思想的前沿群體、國家培養(yǎng)的高級專門人才,大學(xué)生代表年輕有活力一族。我們當(dāng)今大學(xué)生更應(yīng)學(xué)好每一個學(xué)科,來迎接每依次挑戰(zhàn),面對明天,承擔(dān)明天。</p><p> 關(guān)鍵詞 電子詞典,算法,結(jié)構(gòu)體</p><p><b> 目錄&l
17、t;/b></p><p> 摘要……………………………………………….….………………….. . ……………………I</p><p> 第一章 引言 ……………………………………………….….…………………………….…1</p><p> 題目背景……………………………………….…………….………….. …….. …….…1</p>&l
18、t;p> 1.2題目目的......................…………….……………………….. ………………………... . .1</p><p> 1.3解決問題......................…………….……………………….. ………………………... . .1</p><p> 第二章 使用工具…………..….…………………………………….…..….…
19、……………... .2</p><p> 第三章 系統(tǒng)分析與設(shè)置…………………………………………………………………….. 5</p><p> 3.1系統(tǒng)功能………………………………………………………………………. ……….. 5</p><p> 3.2功能設(shè)計………………………………………………………………………. ……….. 5</p>&
20、lt;p> 3.3總流程圖……………………………………………………………………………….....6</p><p> 3.4萬年歷函數(shù)……………………………………………………………………………. .19</p><p> 第四章 系統(tǒng)功能實現(xiàn)……………………………………………………………………. ....23</p><p> 4.1萬年歷函數(shù)…………
21、………………………………………………………. … …. .…23</p><p> 總結(jié)………………………………………………………………………………..….. ……. .. . 27</p><p> 致謝………………………………………………………………………….. …….. …….. ….. 28</p><p> 參考文獻(xiàn)……………………………………………
22、…………………………….. …….. …….29</p><p><b> 第一章 引言</b></p><p><b> 1.1設(shè)計背景</b></p><p> 隨著現(xiàn)代科學(xué)技術(shù)的迅猛發(fā)展,計算機技術(shù)已經(jīng)滲透到各各領(lǐng)域,成為各行各業(yè)必不可少的工具,特別是Internet技術(shù)的推廣和信息高速公路的建立,這使得對書數(shù)
23、據(jù)庫的進一步開發(fā)和利用顯得尤為迫切。</p><p> 當(dāng)今社會中,隨著外語的全面普及,學(xué)習(xí)外語在每個國家都是非常流行的,學(xué)習(xí)外語的語種很多,但最多人學(xué)習(xí)的還是英語,顯然,越來越多的關(guān)于學(xué)習(xí)英語的電子設(shè)備也隨之誕生。當(dāng)然,電子詞典是必不可少的設(shè)備之一。</p><p><b> 1.2設(shè)計目的</b></p><p> 這次設(shè)計主要是應(yīng)用
24、了C程序設(shè)計中的一些算法,還有一些函數(shù)的調(diào)用,結(jié)構(gòu)體的應(yīng)用等,根據(jù)他們的基本思想來編寫程序。程序主要包括的內(nèi)容可以對單詞進行查找、添加、修改、幫助等操作。之所以設(shè)計一個有關(guān)電子詞典管理的程序,是為了方便人們對信息的使用,經(jīng)過這樣一個過程來鞏固和完善自己所學(xué)的知識,同時來培養(yǎng)自己的實踐動手能力。通過本設(shè)計可以加深理解利用程序設(shè)計思想開發(fā)一個系統(tǒng)的整個流程,從而提高分析問題、解決問題和實際動手的能力。</p><p>
25、; 通過本設(shè)計可以加深理解利用程序設(shè)計思想開發(fā)一個系統(tǒng)的整個流程,提高分析問題、解決問題和實際動手的能力為了人們能夠更快的紀(jì)錄其他人的聯(lián)系方式,使人們不再因為記不住其他人的聯(lián)系方式而苦惱。</p><p><b> 1.3解決問題</b></p><p> 電子詞典系統(tǒng)是市場上常用的系統(tǒng)之一,它主要包含以下幾個模塊:查找,增加,刪除,修改,瀏覽,維護幾大模塊。從
26、而,實現(xiàn)對電子詞典的全面使用。從中又增加了萬年歷的功能。</p><p> 這次實訓(xùn),使我們對C語言的掌握更加熟練,也解決了一些問題:</p><p> 1、解決相關(guān)函數(shù)的使用。</p><p> 2、解決存儲文件的使用。</p><p> 3、解決函數(shù)間的鏈接關(guān)系,使函數(shù)的調(diào)用更加方便靈活以及相關(guān)函數(shù)的使用。</p>
27、<p> 4、解決對單個函數(shù)如何操作和各種按鍵的功能設(shè)置以及相關(guān)函數(shù)的使用。</p><p> 5、解決對程序顯示窗口的設(shè)置及對各種相關(guān)函數(shù)的使用。</p><p> 6、提高分析問題、解決問題和實際動手的能力。</p><p><b> 第二章 使用工具</b></p><p> C語言是在國內(nèi)廣泛
28、使用的一種計算機語言。C語言功能豐富、表達(dá)能力強、使用靈活方便、應(yīng)用面廣、目標(biāo)程序效率高、可移植性好,既具有高級語言的優(yōu)點,又具有低級語言的許多特點,因此特別適合于編寫編寫軟件。C語言誕生后,許多原來用匯編語言編寫的軟件,現(xiàn)在可以用C語言編寫了,而學(xué)習(xí)和使用C語言要比學(xué)習(xí)和使用匯編語言容易得多。</p><p> 近年來,C語言不僅為計算機專業(yè)工作者所使用,而且為廣大計算機應(yīng)用人員所喜愛和使用。許多高校不僅在計
29、算機專業(yè)開設(shè)了C語言課程,而且在非計算機專業(yè)也開設(shè)了C語言課程。全國計算機等級考試、全國計算機應(yīng)用技術(shù)認(rèn)證書考試和全國各地區(qū)組織的大學(xué)生計算機統(tǒng)一考試都將C語言列入了考試范圍。許多人用它編寫應(yīng)用軟件。學(xué)習(xí)C語言已經(jīng)成為廣大計算機應(yīng)用人員和廣大青年學(xué)生的迫切要求。</p><p> 由于C語言牽涉的要領(lǐng)比較復(fù)雜,規(guī)則繁多,使用靈活,容易出錯,不少初學(xué)者感到困難,迫切希望學(xué)會、學(xué)懂、學(xué)精。而在學(xué)校中,學(xué)習(xí)程序設(shè)計課
30、程的目的是為了掌握設(shè)計程序的思路,學(xué)會用計算機語言編寫程序,以實現(xiàn)所需處理的任務(wù)。要正確處理算法與語法的關(guān)系,算法是程序的核心、是靈魂,語法是外殼、是工具。不應(yīng)把學(xué)習(xí)重點放在語法規(guī)則上,語法是重要的,不掌握語法規(guī)則就無法編寫出正確的程序,但是只學(xué)會語法,甚至能把語法背得滾瓜爛熟,也不可能編寫出好的程序。一定要把重點放在解題的思路上,通過大量的題學(xué)習(xí)怎樣設(shè)計一個算法,構(gòu)造一個程序。在學(xué)習(xí)開始時更我要在語法細(xì)節(jié)上死摳。重要的是學(xué)會編寫程序,
31、而不是背語法。學(xué)會看懂程序是關(guān)鍵。</p><p> 程序設(shè)計是一門實踐懷很強的課程,既要掌握概念,又要動手編程,還要上機調(diào)試,要衡量這門課學(xué)習(xí)的好壞,不是看我們“知我知道”,而是看我們“會不會干”。要從學(xué)習(xí)的過程中積累經(jīng)驗,學(xué)會舉一反三。目前C語言集成開發(fā)環(huán)境有:Turbo C 2.0(Dos 平臺上的C編譯器)、gcc(GUN C Compile ,UNIX以及Linux平臺上的C/C++編譯器)、Deve
32、loper Studio(Windows 平臺上的C/C++編譯器)。下面主要介紹TurboC2.0。Borland公司在1981年推出C語言程序設(shè)計集成開發(fā)環(huán)境“TurboC 2.0”年推出C,由于其實用穩(wěn)定的性能,一直長期工作應(yīng)用在社會不同領(lǐng)域,得到社會各界的好評。</p><p> Borland公司在1981年推出C語言程序設(shè)計集成開發(fā)環(huán)境“TurboC2.0”有如下特點:</p><
33、;p> 集編輯、編譯、鏈接、調(diào)試、運行為一體;提供了一個菜單式界面,其初始界面。如圖2-1所示。不支持鼠標(biāo),光標(biāo)的移動鍵以及一些編輯命令進行。</p><p><b> 圖2-1主界面</b></p><p> 這時,用上下移動光標(biāo)將光標(biāo)移向“New”處,按回車鍵,系統(tǒng)就進入編輯狀態(tài),光標(biāo)停在編輯窗口的左上角。這時就可以開始編輯一個新的源程序文件了。如圖2
34、-2所示。</p><p> 圖2-2源程序編輯窗口</p><p> 這時,可以按F10(或Alt+F)鍵,使光標(biāo)回到菜單欄,再選擇File菜單中的Save,就可以保存這個源程序文件了。這時,系統(tǒng)將彈出。如圖2-3所示。要求編輯者為個這源程序命名(給上述程序命名為ex101),并確定存放位置。如果編輯者不生重命名,系統(tǒng)就以一個隱含的文件名“no name.c”來保存它,并且隱含地保存
35、在TURBOC2文件夾中。</p><p> 圖2-3命名文件對話框</p><p> (3)編輯(修改)一個原來的源程序文件</p><p> 要編輯(修改)一個原來已經(jīng)有的源程序文件時,要在File菜單中選擇Loac命令。這時,系統(tǒng)就會彈出。如圖2-4所示。要求用戶在其中輸入要編輯的源程序文件名。</p><p> 輸入后,按E
36、nter 鍵,系統(tǒng)就會將要重新編輯的源程序文件調(diào)入到編輯區(qū)內(nèi)。</p><p> 圖2-4裝入要編輯的源程序文件</p><p> 為了方便用戶,系統(tǒng)也允許用戶不為方便命名。只要在要裝入文件的對話框內(nèi)按一下回車鍵,系統(tǒng)就會顯示出保存在TURBOC2中的所有C語言源程序文件的列表。如圖2-5所示。同時列出上一級目錄“..\”和同級的其它目錄,供用戶從中選擇。</p><
37、;p> 圖2-5供用戶選擇的源程序文件列表</p><p> ?。?)程序的編譯、鏈接與執(zhí)行</p><p> 在Turboc 2.0環(huán)境下,編輯、鏈接和執(zhí)行一個C程序,可以有如下幾種方式。</p><p> 使用Compile菜單(快捷鍵Alt+C)中的命令。如圖2-6所示。</p><p> 圖2-6 Compile菜單 &
38、lt;/p><p><b> 主要有兩種方式:</b></p><p> 選擇Compile to OBJ命令,得到目標(biāo)文件;再在選擇菜單中選擇Link EXE filc命令,得到可執(zhí)行文件。</p><p> 選擇Make EXE filc 命令,同時完成編譯和鏈接兩個過程,直接得到可執(zhí)行文件。</p><p>
39、只要在操作系統(tǒng)環(huán)境下單擊空上文件即可執(zhí)行。</p><p> 使用Run菜單中的Run命令(或用Ctrl+F9快捷鍵),可以直接完成編譯,鏈接和執(zhí)行3個過程。</p><p> ?。?)編輯窗口和輸出窗口之間的切換</p><p> 取用Alt+F5快捷鍵在編輯窗口和輸出窗口之間切換。為執(zhí)行ex101.exe后的輸出窗口。如圖2-7所示。</p>
40、<p> 圖2-7程序輸出窗口</p><p> 第三章 系統(tǒng)分析與設(shè)置</p><p><b> 3.1系統(tǒng)功能</b></p><p> 本程序為電子詞典,能夠完成一般的資料的錄入,能夠顯示錄入的資料。</p><p> 利用結(jié)構(gòu)體和鏈表對數(shù)據(jù)進行輸入,刪除和查詢等功能。輸入的信息通過指針存入所對
41、應(yīng)的文件中,通過使用定義的各種指針添加,讀取和刪除信息。程序功能通過下拉菜單實現(xiàn),其功能描述。如圖3-1所示。</p><p> 圖3-1 程序模塊流程圖</p><p><b> 3.2功能設(shè)計</b></p><p> 課程設(shè)計的是電子詞典程序,電子詞典中包括:查找單詞、增加單詞、萬年歷、修改單詞、瀏覽單詞、保存單詞、幫助菜單等項功能
42、。</p><p> 運行程序出現(xiàn)主界面后,輸入“1”可以進入查找功能,可以查找相應(yīng)以存儲的單詞,其中先定義一個字符數(shù)組,輸入要找的單詞后在與已存單詞進行比較,如果找到則顯示單詞。輸入“2”可以進入增加單詞功能,定義兩個字符數(shù)組分別存儲,單詞和詞意,然后再把輸入的單詞和詞意,傳送到結(jié)構(gòu)體中定義的單詞和詞意數(shù)組中去,以便能夠調(diào)用。</p><p> 輸入“3”可以進入萬年歷功能,在程序設(shè)
43、計中,我編制了萬年歷函數(shù),萬年歷函數(shù)是利用date()函數(shù)和m_days函數(shù)相互調(diào)轉(zhuǎn)的形式來實現(xiàn)的,采用菜單工作方式,主要程序用switch語句來完成,利用switch語句來先判斷用戶所輸入的年份是否為閏年再返回相應(yīng)的月份天數(shù)。</p><p> 輸入“4”可以進入修改功能,修改單詞必須建立在已有單詞的前提下,只有系統(tǒng)的“l(fā)nlh.dat”文件里存在單詞以后,才能對其修改。它可以在瀏覽單詞后找到想要修改的單詞。
44、將所要修改的釋義存在temp1中,再將其復(fù)制到dict[i].yi。當(dāng)所存入的單詞釋義有誤時,就可以利用修改功能就其單詞釋義進行修改。</p><p> 輸入“5”可以進入游覽功能,用倆個一維數(shù)組temp與temp1,來實現(xiàn)修改功能。將輸入的單詞用字符串的形式存入temp中,在經(jīng)過循環(huán)語句來實現(xiàn)查找單詞。如果temp與單詞dict[].ci比較等于0時,則說明已經(jīng)單詞找到,便可以顯示單詞了。</p>
45、<p> 輸入“6”存儲功能,此功能是把所輸入的資料保存到文件中去,先定義一個文件,以寫的二進制文件形式打開,文件中最多可以存儲200個單詞,從&dict[i]所指的文件中長度為60的一個數(shù)據(jù)項寫入fp所指向的內(nèi)存區(qū)。</p><p><b> 3.3總流程圖</b></p><p><b> 圖3-2 控制菜單</b>
46、;</p><p> 圖3-2 控制菜單 </p><p><b> 圖3-3 查找單詞</b></p><p><b> 圖3-4 增加單詞</b></p><p><b> 圖3-5 萬年歷</b></p><p> 圖3-6 保存單詞 &
47、lt;/p><p> 圖3-7 瀏覽單詞 </p><p> 圖3-8單詞與意思全部清零</p><p><b> 3.4萬年歷函數(shù)</b></p><p> 1.萬年歷是有兩個函數(shù)組成的分別為:m_day()和date()。</p><p> Date()函數(shù)中包含m_day()函數(shù),m_
48、day()函數(shù)在date()函數(shù)中被調(diào)用,萬年歷中year和month作為實參被調(diào)用傳到行參m_day()函數(shù)中,再通過判斷閏年語句(year%4==0&&year%100!=0) || (year%400==0)進行判斷來返回相應(yīng)的月份天數(shù),再在date()函數(shù)中進行累加,根據(jù)數(shù)學(xué)公式計算出日期所對應(yīng)的星期號,并按照規(guī)定格式輸出。</p><p><b> 圖3-8 萬年歷</
49、b></p><p> 第四章 系統(tǒng)功能實現(xiàn)</p><p><b> 4.1萬年歷函數(shù)</b></p><p> 1. 萬年歷是有兩個函數(shù)組成的分別為:m_day()和date()。</p><p> date()函數(shù)中包含m_day()函數(shù),m_day()函數(shù)在date()函數(shù)中被調(diào)用,萬年歷中year
50、和month作為實參被調(diào)用傳到行參m_day()函數(shù)中,再通過判斷閏年語句(year%4==0&&year%100!=0) || (year%400==0)進行判斷來返回相應(yīng)的月份天數(shù),再在date()函數(shù)中進行累加,根據(jù)數(shù)學(xué)公式計算出日期所對應(yīng)的星期號,并按照規(guī)定格式輸出。</p><p> 首先運行函數(shù),在出現(xiàn)主界面情況下輸入3回車,如圖4-1所示。確認(rèn)后,系統(tǒng)會提示輸入用戶想查找的年份和月
51、份,如圖4-2所示。用戶可以任意輸入年份和月份,如圖4-3所示。之后系統(tǒng)會對用戶輸入的年份和月份顯示出信息,如圖4-4所示。</p><p><b> 圖4-1主界面</b></p><p> 圖4-2 date ( )函數(shù)界面</p><p> 圖4-3輸入年份和月份的date ( )函數(shù)界面</p><p>
52、 圖4-4 date ( )函數(shù)顯示界面</p><p><b> 程序源代碼</b></p><p> /*萬年歷函數(shù)源代碼*/</p><p> int m_day(int year,int month)/*此函數(shù)接收由實參傳給的年份和月份,算出此年是平年還是閏年.*/</p><p><b>
53、{</b></p><p> if ((year%4==0&&year%100!=0) || (year%400==0))/*判斷閏年計算公式*/</p><p> switch(month)/*用switch語句查找閏年月份*/</p><p><b> {</b></p><p>
54、 case 1: case 3: case 5: case 7: case 8: case 10: case 12: return 31;</p><p> case 4: case 6: case 9: case 11: return 30;</p><p> case 2: return 29;</p><p><b> }</b>&
55、lt;/p><p><b> else</b></p><p> switch(month) /*用switch語句查平年找月份*/</p><p><b> {</b></p><p> case 1: case 3: case 5: case 7: case 8: case 10: case
56、 12: return 31;</p><p> case 4: case 6: case 9: case 11: return 30;</p><p> case 2: return 28;</p><p><b> }</b></p><p><b> }</b></p>
57、<p> int date()/*date()主函數(shù)*/</p><p> int year,month;</p><p> int i,days=0,d,day=0;</p><p> system("cls");/*系統(tǒng)清屏 */</p><p> printf("\n
58、 ----Enter the year:");</p><p> scanf("%d",&year);</p><p> printf("\n ----Enter the month:");</p><p> scanf("%d",&month
59、); /*輸入月份*/</p><p> for (i=1;i<month;i++)</p><p> days+=m_day(year,i); /*天數(shù)累加用m_day()函數(shù)把年份和月份傳給行參*/</p><p> d=year-1+(year-1)/4-(year-1)/100+(year-1)/400+days+1;</p>&l
60、t;p> printf("\n ================\n");</p><p> printf(" ================\n");</p><p> printf(" ================\n");</p><p
61、> printf("\n\n\n----------------------------- %d-%d -------------------------------\n",year,month);</p><p> printf("\n\n");</p><p> printf(" Sun Mon
62、 Tue Wed Thu Fri Sat\n"); </p><p> for (i=0;i<d%7;i++)</p><p> printf(" "); /*輸出格式空格 */</p><p> for (i=1;i<=7-d%7;i++) </p>&
63、lt;p><b> { </b></p><p> day++; /*天數(shù)累加 */</p><p> printf("%8d",day); </p><p><b> } </b></p><p> printf("\n"); </p&
64、gt;<p><b> while(1) </b></p><p><b> { </b></p><p> for (i=1;i<=7;i++) </p><p><b> { </b></p><p> day++; /*日期號累加 */ &l
65、t;/p><p> if (day>m_day(year,month)) /*判斷該天日期是否大于該月最大日期*/</p><p> {getch();return 0;} </p><p> printf("%8d",day); </p><p><b> } </b></p>
66、<p> printf("\n"); </p><p> printf(" ================\n");</p><p> printf("
67、 =========\n");</p><p> printf(" ==============\n");</p><p><b> }&l
68、t;/b></p><p><b> }</b></p><p><b> 結(jié) 論</b></p><p> 課程設(shè)計是培養(yǎng)學(xué)生綜合運用所學(xué)知識解決實際問題鍛煉實踐能力的重要環(huán)節(jié)是對學(xué)生實際工作能力的具體訓(xùn)練和考察過程.隨著科學(xué)技術(shù)發(fā)展的日新月異,當(dāng)今計算機應(yīng)用在生活中可以說得是無處不在。因此作為二十一世紀(jì)的大
69、學(xué)來、掌握計算機開發(fā)技術(shù)是十分重要的。</p><p> 回顧起此次課程設(shè)計,至今我們?nèi)愿锌H多,的確,自從拿到題目到完成整個編程,從理論到實踐,在整整兩個星期的日子里,可以學(xué)到很多很多的東西,同時不僅可以鞏固了以前所學(xué)過的知識,而且學(xué)到了很多在書本上所沒有學(xué)到過的知識。通過這次課程設(shè)計使我們懂得了理論與實際相結(jié)合是很重要的,只有理論知識是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識與實踐相結(jié)合起來,從理論中得出結(jié)論,才能
70、真正為社會服務(wù),從而提高自己的實際動手能力和獨立思考的能力。在設(shè)計的過程中遇到問題,可以說得是困難重重,這畢竟第一次做的,難免會遇到過各種各樣的問題,同時在設(shè)計的過程中發(fā)現(xiàn)了自己的不足之處,對一些前面學(xué)過的知識理解得不夠深刻,掌握得不夠牢固,比如說結(jié)構(gòu)體,指針……通過這次課程設(shè)計之后,我們把前面所學(xué)過的知識又重新溫故了一遍。</p><p> 在設(shè)計中我們遇到了很多編程問題,最后在老師的辛勤指導(dǎo)下,我們慢慢的進
71、入狀態(tài),我們做的是一個電子詞典的設(shè)計,內(nèi)容包括很多。我們一組有5個人,我們分工合作,首先我們一起完成了結(jié)構(gòu)體,然后我們一人各負(fù)責(zé)一個函數(shù)程序的設(shè)計,經(jīng)過幾星期的努力,我們完成了大半個程序,但是總是有很多錯誤出現(xiàn),有好多是些小問題,這都是我們粗心大意造成的,所以設(shè)計程序一定要仔細(xì),不容一點的馬虎。當(dāng)然也有大問題,關(guān)于文件的操作,是我們最大的問題,不過,我們做好后,經(jīng)過老師的講解和改錯,我們也懂得設(shè)計和運用了。</p><
72、;p> 我們的課程設(shè)計結(jié)束了,但是它留給我的印象是不可磨滅的。無論我以后會不會涉及到C語言程序編譯的研究,我想,我至少掌握了一種系統(tǒng)的研究方法,我們學(xué)習(xí)的目的就在于運用,我們運用這種研究方法的時候會很多,我最后要感謝課程設(shè)計,它的確教會我很多。</p><p><b> 致 謝</b></p><p> 本次課程設(shè)計的選題,研究及論文的撰寫均是在我們的
73、指導(dǎo)教師**這幾位老師的悉心指導(dǎo)下進行的。設(shè)計中的我遇到了許多困難看著幾百條程序無從下手時,這幾位老師總是悉心的幫我解決,我認(rèn)為我的課程設(shè)計不僅有我的心血還有這幾位老師的心血。老師在操作系統(tǒng)和軟件開發(fā)方面的有很多的實踐經(jīng)驗,在我們面對問題時對我們的悉心指導(dǎo)及其嚴(yán)謹(jǐn)?shù)墓ぷ鲬B(tài)度銳意創(chuàng)新的精神,使我們受益匪淺,在此特別向老師表示深深的感謝和由衷的敬意。在系統(tǒng)完善過程中,我們也遇到了這樣或那樣的技術(shù)問題,但經(jīng)過自己的不懈努力及查閱大量的資料,最
74、終都得到了基本滿意的答案。同時,同學(xué)也給了我許多有益的啟示,促動和幫助,使我能夠順利的完成課題。</p><p> 感謝實訓(xùn)E機房所有給予我們幫助的老師,他們辛勤耕作,傳道授業(yè),不僅使我們開闊了視野,拓寬了思路,增長了學(xué)識,而且為我們今后的工作和學(xué)習(xí)打下了牢固的基礎(chǔ),也使我們增強對計算機的興趣。</p><p> 在論文的最后,再次感謝**幾位老師,我的課程設(shè)計是在這四位老師的悉心指導(dǎo)
75、下才順利完成的。在我做課程設(shè)計這一段時間,導(dǎo)師淵博的學(xué)識、嚴(yán)謹(jǐn)求實的科學(xué)精神、一絲不茍的治學(xué)態(tài)度和高尚的品格,深深的感染了我和每一個同學(xué)。課程設(shè)計的每一處完善都要有老師的辛勤工作,從各個方面來說,審查的工作往往比編寫任務(wù)更復(fù)雜。正是導(dǎo)師百忙中不辭勞苦的幫助,才使我能夠順利完成我的課程設(shè)計,在這里,對您衷心的表示感謝。在以后的學(xué)習(xí)和工作中我一定認(rèn)真對待,我從我們老師那里學(xué)習(xí)到了課本上不能給予我的一種精神,他們使我們在今后的,繼續(xù)學(xué)習(xí)或工作
76、中,都是我們寶貴的財富。在最后我們要在次感謝我們的母校和對我們有深遠(yuǎn)影響的老師和同學(xué)們。祝你們今后健康快樂,事事順心。在這里謹(jǐn)以此文獻(xiàn)給他們。</p><p><b> 參考文獻(xiàn)</b></p><p> [1] 譚浩強 編著 《C程序設(shè)計》(第三版)。北京:清華大學(xué)出版社,2006</p><p> [2]吳文虎 編著 《程序設(shè)計基礎(chǔ)》
77、(第3版)。 北京:清華大學(xué)出版社,2005</p><p> [3] 鄭莉 董淵 張瑞豐 編著 《C++語言程序設(shè)計》(第3版)。 北京:清華大學(xué)出版社,2006</p><p> [4]C編寫組 常用C語言用法速查手冊。北京:龍門書局,1995 </p><p> [5]Herbert Schildt 著 王曦若、李沛譯 ANSI C標(biāo)準(zhǔn)詳解。北京:電子
78、工業(yè)出版社,1994</p><p> [6]C程序設(shè)計語言(第二版)。大學(xué)計算機教育叢書(影印版)清華大學(xué)出版社,2007</p><p> [7] Andrew Koenig編著《C語言陷阱與缺陷》。Andrew Koenig人民郵電出版社 ,2003</p><p> [8] (美)林登(Peter Van Der Linden)編著《C語言專家編程》。
溫馨提示
- 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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- c++多功能電子詞典課程設(shè)計
- c語言電子詞典代碼
- c語言電子詞典代碼
- java課程設(shè)計---英漢電子詞典
- java課程設(shè)計-英漢電子詞典系統(tǒng)
- java課程設(shè)計-英漢電子詞典系統(tǒng)
- c語言課程設(shè)計——電子英漢詞典
- c語言課程設(shè)計——電子英漢詞典
- 電子詞典
- 電子詞典.docx
- 促銷策略課程設(shè)計-- 電子詞典針對留學(xué)生的促銷策略
- 電子詞典卡通大賽
- c語言課程設(shè)計(電子時鐘)
- 電子詞典卡通大賽模板
- 【課程設(shè)計】c語言課程設(shè)計
- 電子詞典設(shè)計與開發(fā)畢業(yè)設(shè)計
- c語言課程設(shè)計--電子生詞庫軟件
- 電子英漢詞典課程設(shè)計
- c語言課程設(shè)計
- c語言課程設(shè)計
評論
0/150
提交評論