版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 畢業(yè)設(shè)計(jì)報(bào)告(論文)</p><p> 題目:一種基于Qt的科學(xué)計(jì)算器系統(tǒng) </p><p> 所 屬 系電子工程系</p><p> 專 業(yè)電子科學(xué)與技術(shù)</p><p> 學(xué) 號(hào)01308150</p><p> 姓 名羊元東</p><p> 指導(dǎo)
2、教師滕衍萍</p><p> 起訖日期2013.2 --- 2013.5</p><p> 設(shè)計(jì)地點(diǎn)東南大學(xué)成賢學(xué)院</p><p> 東南大學(xué)成賢學(xué)院畢業(yè)設(shè)計(jì)報(bào)告(論文)</p><p><b> 誠(chéng) 信 承 諾</b></p><p> 本人承諾所呈交的畢業(yè)設(shè)計(jì)報(bào)告(論文)及取得的成果是
3、在導(dǎo)師指導(dǎo)下完成,引用他人成果的部分均已列出參考文獻(xiàn)。如論文涉及任何知識(shí)產(chǎn)權(quán)糾紛,本人將承擔(dān)一切責(zé)任。</p><p> 學(xué)生簽名: </p><p><b> 日 期:</b></p><p> 一種基于Qt的科學(xué)計(jì)算器系統(tǒng)</p><p><b> 摘 要</b>&l
4、t;/p><p> 人類已經(jīng)進(jìn)入信息化時(shí)代。信息技術(shù)發(fā)展日新月異,計(jì)算器已經(jīng)進(jìn)入人們生活的各個(gè)領(lǐng)域,在現(xiàn)代生活中不可或缺,大型復(fù)雜的計(jì)算是人腦所不能勝任的,而且較易出錯(cuò)。本文針對(duì)Qt科學(xué)計(jì)算器進(jìn)行研究,增加了很多功能,給用戶帶來(lái)了很多方便,并且提高了用戶的運(yùn)算效率。</p><p> 本文從項(xiàng)目背景、需求分析、軟件設(shè)計(jì)等方面詳細(xì)說(shuō)明了Qt科學(xué)計(jì)算器的開(kāi)發(fā)設(shè)計(jì)過(guò)程。軟件采用linux編寫代碼
5、,Qt 設(shè)計(jì)界面來(lái)開(kāi)發(fā)。計(jì)算器包含簡(jiǎn)單計(jì)算功能。</p><p> 計(jì)算器具有界面可視化,方便用戶操作等特點(diǎn),并且該計(jì)算器的算式提取與存儲(chǔ)功能使得算式計(jì)算更加快捷方便,為用戶進(jìn)行大量復(fù)雜科學(xué)計(jì)算提供了有效保證。</p><p> 關(guān)鍵詞:科學(xué)計(jì)算器;進(jìn)制轉(zhuǎn)換;算式提??; Qt </p><p> English title</p><p&g
6、t;<b> Abstract</b></p><p> Mankind has entered the information age. The rapid development of information technology, the calculator has entered all spheres of life of the people, an integral pa
7、rt of modern life, a large complex calculations the human brain is incapable of, and error-prone. For Qt scientific calculator, adding a lot of features, a lot of convenience to the user, and improve the operational effi
8、ciency of the user.</p><p> From the project background, requirements analysis, software design and other aspects of a detailed description of the development of the design process of the Qt scientific calc
9、ulator. The software uses the Linux write code, Qt interface design to develop. The calculator contains a simple calculation functions.</p><p> The calculator interface visualization, user-friendly operatio
10、n, and the calculator formula extraction and storage features make the formula quicker and more convenient for the user to carry out a large number of complex scientific calculations provide an effective guarantee.</p
11、><p> Keyword: Scientific calculators; binary conversion; formula extract; Qt </p><p><b> 目 錄</b></p><p><b> 摘 要I</b></p><p> AbstractII&
12、lt;/p><p><b> 第一章 緒論1</b></p><p> 1.1 項(xiàng)目背景1</p><p> 1.2 項(xiàng)目?jī)?nèi)容和要求1</p><p> 1.2.1 題目介紹1</p><p> 1.2.2 題目要求1</p><p> 1.3 項(xiàng)目特點(diǎn)及
13、意義1</p><p> 第二章 需求分析3</p><p> 2.1 功能需求一3</p><p> 2.2 功能分析3</p><p> 2.3 安全性分析4</p><p> 2.4 可行性分析4</p><p> 2.5 系統(tǒng)設(shè)計(jì)工具4</p>&
14、lt;p> 2.5.1 fedora技術(shù)簡(jiǎn)介4</p><p> 2.5.2 QSqlite數(shù)據(jù)庫(kù)技術(shù)4</p><p> 第三章 軟件設(shè)計(jì)6</p><p> 3.1 數(shù)據(jù)庫(kù)設(shè)計(jì)6</p><p> 3.1.1 實(shí)體屬性圖6</p><p> 3.1.2 關(guān)系模型設(shè)計(jì)6</p>
15、;<p> 3.1.3 數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)7</p><p> 第四章 簡(jiǎn)單的計(jì)算器8</p><p><b> 4.1項(xiàng)目目的8</b></p><p><b> 4.2項(xiàng)目?jī)?nèi)容8</b></p><p><b> 4.3項(xiàng)目步驟8</b><
16、;/p><p> 第五章 計(jì)算器程序的實(shí)現(xiàn)11</p><p> 第六章 源代碼的分析說(shuō)明14</p><p> 第七章 編譯運(yùn)行20</p><p> 第八章 計(jì)算器程序的移植21</p><p><b> 致 謝23</b></p><p><b
17、> 參考文獻(xiàn)24</b></p><p><b> 第一章 緒論</b></p><p><b> 1.1 項(xiàng)目背景</b></p><p> 隨著計(jì)算機(jī)的飛速發(fā)展,人類已經(jīng)進(jìn)入信息化時(shí)代。信息技術(shù)發(fā)展日新月異,計(jì)算已經(jīng)進(jìn)入人們生活的各個(gè)領(lǐng)域,在現(xiàn)代生活中不可或缺,大型復(fù)雜的計(jì)算是人腦所不能勝任
18、的,而且較易出錯(cuò)。以前的計(jì)算器只能進(jìn)行簡(jiǎn)單的加減乘除四則運(yùn)算,而且只能進(jìn)行單步運(yùn)算,如果遇到較長(zhǎng)的算式時(shí)就得讓用戶一步一步輸入,浪費(fèi)很多時(shí)間,還會(huì)可能遺漏數(shù)據(jù)內(nèi)容,讓用戶得多次輸入算式驗(yàn)證,如果一次錯(cuò)誤就得驗(yàn)證多遍,浪費(fèi)時(shí)間效率低下。隨著科技的發(fā)展,人們所學(xué)習(xí)的內(nèi)容越來(lái)越多,需求越來(lái)越廣泛。</p><p> 本文設(shè)計(jì)的計(jì)算器擴(kuò)大了用戶的運(yùn)算領(lǐng)域。并且考慮到用戶有時(shí)常用一些算式,提高了用戶的效率,方便了用戶的操
19、作,本文設(shè)計(jì)中主要采用的技術(shù)為Qt ,Qt 為設(shè)計(jì)可視化界面,通過(guò)軟件的設(shè)計(jì)可以快速設(shè)計(jì)出自己需要的界面,然后再到編寫各個(gè)按鍵的槽函數(shù)與算法。上網(wǎng)查找資料,看書查找例子。</p><p> 1.2 項(xiàng)目?jī)?nèi)容和要求</p><p> 1.2.1 題目介紹</p><p> 設(shè)計(jì)一個(gè)功能齊備的QT科學(xué)計(jì)算器,具有算式編輯計(jì)算和普通計(jì)算窗口。具體要求如下:可同時(shí)出現(xiàn)
20、二、八、十六、十等不同進(jìn)制,并可實(shí)現(xiàn)大中小括號(hào)和各類不同函數(shù)及位運(yùn)算。三角函數(shù)可設(shè)置度或弧度。設(shè)計(jì)實(shí)現(xiàn)文件處理窗口,可實(shí)現(xiàn)算式的添加、刪除、存儲(chǔ)和提取。</p><p> 普通計(jì)算窗口:支持二、八、十六、十等不同進(jìn)制數(shù)據(jù)的直接輸入、計(jì)算和數(shù)制間的相互轉(zhuǎn)換,當(dāng)輸入回車鍵或等號(hào)鍵時(shí)直接給出當(dāng)前算式的運(yùn)算結(jié)果,算式計(jì)算和編輯可同時(shí)交叉進(jìn)行,設(shè)置中間變量,方便運(yùn)算過(guò)程中中間數(shù)據(jù)的存儲(chǔ)或提取插入。</p>
21、<p> 1.2.2 題目要求</p><p> ?。?)實(shí)現(xiàn)二進(jìn)制、八進(jìn)制、十進(jìn)制、十六進(jìn)制之間的轉(zhuǎn)換;</p><p> (2)實(shí)現(xiàn)對(duì)算式的編輯、存儲(chǔ)、粘貼、修改、計(jì)算;</p><p> ?。?)算式長(zhǎng)度可達(dá)256個(gè)字符;</p><p> ?。?)實(shí)現(xiàn)普通計(jì)算和科學(xué)計(jì)算;</p><p> ?。?
22、)實(shí)現(xiàn)大中小括號(hào)和各類不同函數(shù)及位運(yùn)算;</p><p> ?。?)支持二、八、十六、十等不同進(jìn)制數(shù)據(jù)的直接輸入、計(jì)算和數(shù)制間的相互轉(zhuǎn)換;</p><p> ?。?)實(shí)現(xiàn)對(duì)各個(gè)按鍵的幫助功能;</p><p> ?。?)顯示當(dāng)前日期時(shí)間功能;</p><p> 采用高級(jí)程序設(shè)計(jì)語(yǔ)言,編碼規(guī)范清晰,關(guān)鍵算法或處理須加注釋說(shuō)明。</p&g
23、t;<p> 1.3 項(xiàng)目特點(diǎn)及意義</p><p> 本文對(duì)計(jì)算器進(jìn)行設(shè)計(jì),比傳統(tǒng)計(jì)算其增加了許多功能,使用更方便,主要有以下幾個(gè)特點(diǎn):</p><p> ?。?)計(jì)算速度快,節(jié)省時(shí)間、人力</p><p> ?。?)普通窗口可以進(jìn)行各進(jìn)制的加減乘除運(yùn)算。</p><p> ?。?)科學(xué)計(jì)算窗口可以進(jìn)行小括號(hào)、中括號(hào)、大括
24、號(hào),正弦、余弦,角度,弧度,包括普通窗口的運(yùn)算。</p><p> (4)可對(duì)算式進(jìn)行存儲(chǔ),添加,刪除等功能。 </p><p> ?。?)有幫助功能,可以通過(guò)查詢查詢個(gè)按鍵的功能,可以對(duì)按鍵功能添加、刪除。 </p><p> ?。?)提供良好的人機(jī)交互界面,操作簡(jiǎn)單快捷。</p><p> QT科學(xué)計(jì)算器比傳統(tǒng)計(jì)算器多了很多功能,可以
25、進(jìn)行普通窗口計(jì)算,也可以進(jìn)行科學(xué)窗口計(jì)算。普通窗口計(jì)算時(shí)可以進(jìn)行各種進(jìn)制的四則運(yùn)算,還可以把數(shù)字通過(guò)進(jìn)制轉(zhuǎn)換,得到需要的數(shù)據(jù)??茖W(xué)窗口計(jì)算時(shí)可以把整個(gè)算式輸入進(jìn)行計(jì)算,這樣避免因輸入的數(shù)據(jù)過(guò)多而得多次驗(yàn)證,只需確保輸入的算式正確就可以得到正確的結(jié)果??梢园殉S玫乃闶奖4嫫饋?lái),這樣下次再用時(shí)用戶可以直接提取算式,避免了因再次輸入算式而浪費(fèi)時(shí)間,提到了效率??茖W(xué)計(jì)算式還可以進(jìn)行,正弦、余弦、角度、弧度、開(kāi)方、平方、或與非等運(yùn)算,并且增加了括
26、號(hào)符號(hào),使得算式具有優(yōu)先級(jí)。提高運(yùn)算效率。并增加了幫助功能,使得用戶及時(shí)查詢幫助功能,快速學(xué)會(huì)使用操作。</p><p><b> 第二章 需求分析</b></p><p><b> 2.1 功能需求一</b></p><p> 在程序設(shè)計(jì)中,通過(guò)設(shè)計(jì)、編制、調(diào)試一個(gè)模擬計(jì)算器的程序,加深對(duì)語(yǔ)法及語(yǔ)義分析原理的理解,
27、并實(shí)現(xiàn)對(duì)命令語(yǔ)句的靈活應(yīng)用。在程序設(shè)計(jì)中,可以用兩種方法解決問(wèn)題:一是傳統(tǒng)的結(jié)構(gòu)化程序設(shè)計(jì)方法,二是更先進(jìn)的面向?qū)ο蟪绦蛟O(shè)計(jì)方法。而在面向?qū)ο蟪绦蛟O(shè)計(jì)中關(guān)鍵是如何將問(wèn)題域中的實(shí)體(即日常所見(jiàn)的概念)抽取出來(lái),作為C++程序中的類,而屬性與行為作為類的兩類要素通常是必不可少的,甚至還應(yīng)考慮類必須滿足的約束。</p><p> 我們?nèi)粘I畹拈_(kāi)支,大額數(shù)字或是多倍小數(shù)的計(jì)算都需要計(jì)算器的幫助,處理數(shù)字的開(kāi)方、正余弦
28、都離不開(kāi)計(jì)算器。雖然現(xiàn)在的計(jì)算器價(jià)格比較低廉,但是功能過(guò)于簡(jiǎn)單的不能滿足個(gè)人需求,功能多的價(jià)格較貴,操作不便不說(shuō),很多功能根本用不到。所以,我們想到可不可以用自己的所學(xué)為自己設(shè)計(jì)開(kāi)發(fā)一個(gè)屬于自己的簡(jiǎn)單計(jì)算器來(lái)完成日常生活的需求。</p><p> 計(jì)算器是日常生活中十分便捷有效的工具,能實(shí)現(xiàn)加、減、乘、除、開(kāi)方、求倒數(shù)等簡(jiǎn)單運(yùn)算的工具。要實(shí)現(xiàn)計(jì)算功能,可以用C++和Qt的知識(shí)編寫程序來(lái)解決此問(wèn)題。該計(jì)算器大大的
29、降低了數(shù)字計(jì)算的難度及提高了計(jì)算的準(zhǔn)確度和精確度。該計(jì)算器使用非常簡(jiǎn)單和方便,對(duì)廣大中小學(xué)生的學(xué)習(xí)有巨大幫助作用,也對(duì)在職人員的工作有點(diǎn)幫助作用。本文的程序設(shè)計(jì)設(shè)計(jì)工作環(huán)境為L(zhǎng)inux +QT Creator ,在程序設(shè)計(jì)中,采用了結(jié)構(gòu)化與面向?qū)ο髢煞N解決問(wèn)題的方法。</p><p><b> 2.2 功能分析</b></p><p> 1).普通窗口計(jì)算設(shè)計(jì)&l
30、t;/p><p> 這一模塊要求進(jìn)行加減乘除運(yùn)算。</p><p> 支持二、八、十六、十等不同進(jìn)制數(shù)據(jù)的直接輸入、計(jì)算和數(shù)制間的相互轉(zhuǎn)換,當(dāng)輸入回車鍵或等號(hào)鍵時(shí)直接給出當(dāng)前算式的運(yùn)算結(jié)果,算式計(jì)算和編輯可同時(shí)交叉進(jìn)行,設(shè)置中間變量,方便運(yùn)算過(guò)程中中間數(shù)據(jù)的存儲(chǔ)或提取插入。</p><p> 2).科學(xué)算式窗口計(jì)算設(shè)計(jì)</p><p>
31、(1)可以對(duì)算式進(jìn)行編輯、存儲(chǔ)、粘貼、修改、計(jì)算。</p><p> ?。?)算式長(zhǎng)度可達(dá)256個(gè)字符。</p><p> ?。?)算式內(nèi)可同時(shí)出現(xiàn)二、八、十六、十等不同進(jìn)制,并可實(shí)現(xiàn)大中小括號(hào)和各類不同函數(shù)及位運(yùn)算。</p><p> (4)三角函數(shù)可設(shè)置度或弧度。</p><p> (5)設(shè)計(jì)實(shí)現(xiàn)文件處理窗口,可實(shí)現(xiàn)算式的添加、刪除、
32、存儲(chǔ)和提取。</p><p> 3).幫助功能實(shí)現(xiàn)設(shè)計(jì)</p><p> ?。?)通過(guò)幫助鍵可以查找各鍵的功能。</p><p> (2)可以對(duì)幫助里的功能添加刪除。</p><p><b> 4).時(shí)間功能設(shè)計(jì)</b></p><p> 可以顯示當(dāng)前時(shí)間,并且隨著電腦時(shí)間的改變而改變。&
33、lt;/p><p><b> 5).算式編輯</b></p><p> (1)可以對(duì)輸入的算式保存。</p><p> (2)可以添加算式。</p><p> (3)可以刪除算式。</p><p><b> 2.3 安全性分析</b></p><p&
34、gt; 使用Qt自帶的QSqlite數(shù)據(jù)庫(kù),進(jìn)行存儲(chǔ)算式,對(duì)算式進(jìn)行添加、保存、刪除功能,并且在幫助功能上也使用此數(shù)據(jù)庫(kù),把各個(gè)按鍵的功能村如此數(shù)據(jù)庫(kù)中。還可以添加和刪除,非常方便。</p><p> 并且此程序界面使用Qt designer進(jìn)行布局,這樣對(duì)各個(gè)控件進(jìn)行布局,排版結(jié)構(gòu)時(shí)不容易出錯(cuò),快速便捷。提高軟件的安全性。</p><p><b> 2.4 可行性分析&l
35、t;/b></p><p> 計(jì)算器是日常生活中非常便捷有效的工具,它具有普通計(jì)算和科學(xué)計(jì)算,能實(shí)現(xiàn)加減乘除等普通功能,還可以實(shí)現(xiàn)算是運(yùn)算,并且可以進(jìn)行進(jìn)制裝換,不再局限于十進(jìn)制,他大大的提高了我們的效率,節(jié)省了時(shí)間,可促進(jìn)科技的發(fā)展,還可以用來(lái)存儲(chǔ)算式,可以方便下次使用,采用Qt編寫,Qt designer設(shè)計(jì)的界面美觀,還可以用拖拽功能進(jìn)行設(shè)計(jì)控件的位置、大小、屬性、結(jié)構(gòu)等功能,這樣在編寫代碼時(shí)就不用
36、浪費(fèi)時(shí)間對(duì)控件進(jìn)行聲明等代碼了。這降低了程序員的難度,提高了程序員的效率,并且上手快,具有一定的可行性。</p><p> 技術(shù)經(jīng)濟(jì)分析是研究技術(shù)領(lǐng)域的經(jīng)濟(jì)問(wèn)題和經(jīng)濟(jì)規(guī)律的科學(xué),是研究一定技術(shù)條件下如何提高經(jīng)濟(jì)效果的科學(xué),是技術(shù)與經(jīng)濟(jì)的交叉。</p><p> 在技術(shù)上,主要是采用linux,可以進(jìn)行復(fù)雜的數(shù)據(jù)庫(kù)操作,進(jìn)行算是的增、刪、改、查等功能。用Qt編寫,有些類似C++,但大多數(shù)
37、都是Qt封裝好的函數(shù)。</p><p> 在linux中安裝Qt軟件,配置環(huán)境變量,并安裝Qt插件。從而用Qt 進(jìn)行制作界面,做出的效果既美觀又快捷方便。</p><p> 使用Qt具有良好美觀的界面,必要的信息存儲(chǔ)和和較好的健壯性,使用人員能夠快捷簡(jiǎn)單的進(jìn)行操作,可以快捷的獲得計(jì)算結(jié)果,給人們帶來(lái)方便,對(duì)人們的生活有很大的幫助。</p><p> 2.5 系
38、統(tǒng)設(shè)計(jì)工具</p><p> 2.5.1 fedora技術(shù)簡(jiǎn)介</p><p> Fedora (第七版以前為Fedora Core)是一款基于 Linux 的操作系統(tǒng),也是一組維持計(jì)算機(jī)正常運(yùn)行的軟件集合。Fedora 由Fedora Project社區(qū)開(kāi)發(fā)、紅帽公司贊助,目標(biāo)是創(chuàng)建一套新穎、多功能并且自由和開(kāi)源的操作系統(tǒng)。Fedora 項(xiàng)目以社區(qū)的方式工作,引領(lǐng)創(chuàng)新并傳播自由代碼和
39、內(nèi)容,是世界各地愛(ài)好、使用和構(gòu)建自由軟件的社區(qū)朋友的代名詞。</p><p> Fedora基于Red Hat Linux,在Red Hat Linux終止發(fā)行后,紅帽公司計(jì)劃以Fedora來(lái)取代Red Hat Linux在個(gè)人領(lǐng)域的應(yīng)用,而另外發(fā)行的Red Hat Enterprise Linux(Red Hat企業(yè)版Linux,RHEL)則取代Red Hat Linux在商業(yè)應(yīng)用的領(lǐng)域。</p>
40、<p> Fedora的功能對(duì)于用戶而言,它是一套功能完備、更新快速的免費(fèi)操作系統(tǒng),而對(duì)贊助者Red Hat公司而言,它是許多新技術(shù)的測(cè)試平臺(tái),被認(rèn)為可用的技術(shù)最終會(huì)加入到Red Hat Enterprise Linux中。</p><p> 2.5.2 QSqlite數(shù)據(jù)庫(kù)技術(shù)</p><p> SQLite,是一款輕型的數(shù)據(jù)庫(kù),是遵守ACID的關(guān)聯(lián)式數(shù)據(jù)庫(kù)管理系統(tǒng),
41、它的設(shè)計(jì)目標(biāo)是嵌入式的(1)Qt designer技術(shù)介紹</p><p> 簡(jiǎn)單的來(lái)說(shuō)QT Designer是一個(gè)GUI的工具。這個(gè)工具可以幫助我們來(lái)加快寫QT 程序的速度.利用QT Designer可以用一種所見(jiàn)既所得的方式,來(lái)產(chǎn)生QT程序的GUI介面的程式碼.通過(guò)增加一些功能,就可以完成一個(gè)程序了.利用QT Designer可以非??焖俚膶W(xué)會(huì)QT,而我們這里說(shuō)利用QT Designer來(lái)學(xué)習(xí)QT而不是利用
42、QT Designer來(lái)寫QT,這里的區(qū)別就在于QT Designer所產(chǎn)生的程序代碼有些繁瑣,運(yùn)行起來(lái)也比較的慢些,我們這里只是利用QT Designer來(lái)幫助我們學(xué)習(xí),而不是直接去運(yùn)行QT Designer生成的程序,在這里Qt designer與vs2008連接在一起,安裝qt-win-opensource-4.7.3-vs2008.exe,在安裝vs的qt插件qt-vs-addin-1.1.9.exe,在配置環(huán)境變量:QT =
43、your Qt-root-folder;在 PATH中添加: “;%QT%\bin”。然后就可以用Qt designer中的控件進(jìn)行制作程序界面,并且可以直接修改屬性,這樣可以在代碼量上節(jié)省不少時(shí)間。</p><p><b> ?。?)Qt技術(shù)介紹</b></p><p> QT 是一個(gè)跨平臺(tái)的 C++ GUI 應(yīng)用構(gòu)架,它提供了豐富的窗口部件集,具有面向?qū)ο?、易?/p>
44、擴(kuò)展、真正的組件編程等特點(diǎn),更為引人注目的是目前 Linux 上最為流行的 KDE 桌面環(huán)境就是建立在 QT 庫(kù)的基礎(chǔ)之上。支持 Linux 平臺(tái)。伴隨著 KDE 的快速發(fā)展和普及,QT 很可能成為 Linux 窗口平臺(tái)上進(jìn)行軟件開(kāi)發(fā)時(shí)的 GUI 首選。</p><p> 信號(hào)和槽機(jī)制是 QT 的核心機(jī)制,要精通 QT 編程就必須對(duì)信號(hào)和槽有所了解。信號(hào)和槽是一種高級(jí)接口,應(yīng)用于對(duì)象之間的通信,它是 QT 的核
45、心特性,也是 QT 區(qū)別于其它工具包的重要地方。信號(hào)和槽是 QT 自行定義的一種通信機(jī)制,它獨(dú)立于標(biāo)準(zhǔn)的 C/C++ 語(yǔ)言,因此要正確的處理信號(hào)和槽,必須借助一個(gè)稱為 moc(Meta Object Compiler)的 QT 工具,該工具是一個(gè) C++ 預(yù)處理程序,它為高層次的事件處理自動(dòng)生成所需要的附加代碼。</p><p> 在我們所熟知的很多 GUI 工具包中,窗口小部件 (widget) 都有一個(gè)回調(diào)
46、函數(shù)用于響應(yīng)它們能觸發(fā)的每個(gè)動(dòng)作,這個(gè)回調(diào)函數(shù)通常是一個(gè)指向某個(gè)函數(shù)的指針。但是,在 QT 中信號(hào)和槽取代了這些凌亂的函數(shù)指針,使得我們編寫這些通信程序更為簡(jiǎn)潔明了。 信號(hào)和槽能攜帶任意數(shù)量和任意類型的參數(shù),他們是類型完全安全的,不會(huì)像回調(diào)函數(shù)那樣產(chǎn)生 core dumps。在這里我設(shè)計(jì)的主窗口為:QWidget,而在幫助窗口為:QDialog。</p><p><b> 第三章 軟件設(shè)計(jì)</b
47、></p><p><b> 3.1 數(shù)據(jù)庫(kù)設(shè)計(jì)</b></p><p> 數(shù)據(jù)庫(kù)在一個(gè)管理系統(tǒng)中占有非常重要的地位,數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)的好壞將直接對(duì)應(yīng)用系統(tǒng)的效率以及實(shí)現(xiàn)的效果產(chǎn)生影響。合理的數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)可以提高數(shù)據(jù)存儲(chǔ)的效率,保證數(shù)據(jù)庫(kù)的完整性和一致性。同時(shí),合理的數(shù)據(jù)庫(kù)結(jié)構(gòu)也將有利于程序的實(shí)現(xiàn)。</p><p> 3.1.1 實(shí)
48、體屬性圖</p><p> E-R圖是實(shí)體之間聯(lián)系的一個(gè)簡(jiǎn)單表述,下面詳細(xì)介紹各實(shí)體的屬性:</p><p> 圖3.1算式實(shí)體屬性圖</p><p> 算式實(shí)體屬性如圖3.1,包括算式id,算式名字。</p><p> 圖3.2按鍵信息實(shí)體屬性圖</p><p> 按鍵信息實(shí)體屬性如圖3.2,包括按鍵編號(hào),
49、按鍵名,按鍵功能。</p><p> 3.1.2 關(guān)系模型設(shè)計(jì)</p><p> 本系統(tǒng)中主要的關(guān)系模型設(shè)計(jì)如下:</p><p> 算式信息(編號(hào),算式名);</p><p> 按鍵信息(編號(hào),按鍵名,按鍵功能);</p><p> 3.1.3 數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)</p><p> 每
50、個(gè)數(shù)據(jù)文件均有一張定義表。其數(shù)據(jù)庫(kù)各表的表頭信息更為詳細(xì)的反映數(shù)據(jù)間的關(guān)系。本系統(tǒng)數(shù)據(jù)庫(kù)的內(nèi)容包括算式表、幫主功能表。</p><p> 表的具體設(shè)計(jì)如下所示:</p><p> (1)算式表用來(lái)存儲(chǔ)算是編號(hào)和算式名,表名:message。本表用來(lái)存儲(chǔ)已用戶常用的算式,其中可以對(duì)算式進(jìn)行保存、刪除、修改,方便用戶及使用到常用的式子,提高用戶效率。算式表如表3.1所示。</p>
51、;<p><b> 表3.1算式表</b></p><p> (2)按鍵信息表用來(lái)存儲(chǔ)按鍵編號(hào),按鍵名,按鍵功能,表名:helpmessage。本表用來(lái)實(shí)現(xiàn)幫助功能,存儲(chǔ)幫助功能中按鍵的信息,可以查看所有的按鍵功能,也可以看單個(gè)按鍵信息,還可以對(duì)案件信息進(jìn)行增加和刪除。按鍵表如表3.2所示。</p><p><b> 表3.2按鍵表<
52、;/b></p><p> 第四章 簡(jiǎn)單的計(jì)算器</p><p><b> 4.1項(xiàng)目目的</b></p><p> (1)熟悉QtCreator的簡(jiǎn)單操作。</p><p> ?。?)了解Qt程序編寫框架。</p><p> (3)了解信號(hào)和槽機(jī)制,熟練掌握信號(hào)與槽在應(yīng)用程序中的使
53、用。</p><p><b> 4.2項(xiàng)目?jī)?nèi)容</b></p><p> ?。?)查看API手冊(cè),學(xué)習(xí)簡(jiǎn)單的Qt類的使用,如QLineEdit、QPushButton等。</p><p> (2)用QtCreator創(chuàng)建工程,用Qt編寫計(jì)算器程序。</p><p> (3)對(duì)計(jì)算器程序進(jìn)行移植。</p>
54、<p><b> 4.3項(xiàng)目步驟</b></p><p><b> 創(chuàng)建工程</b></p><p> 1)打開(kāi)QtCreator,如圖F-1所示。</p><p><b> 圖F-1</b></p><p> 2)選擇File->New File
55、 or Project,然后在彈出的對(duì)話框中選擇Other Project->Empty Qt project(如圖F-2所示),然后進(jìn)入下一步。</p><p><b> 圖2</b></p><p> 3)定義新工程的工程名并選擇保存路徑(如圖F-3所示),然后進(jìn)入下一步。</p><p><b> 圖3</b&
56、gt;</p><p> 4)選擇Qt版本,這里選擇使用Qt4.7.1,取消對(duì)Qt in PATH的選擇(如圖4所示),然后進(jìn)入下一步,完成新工程的創(chuàng)建(如圖F-5所示)。</p><p><b> 圖F-4</b></p><p><b> 圖F-5</b></p><p> 第五章 計(jì)算
57、器程序的實(shí)現(xiàn)</p><p> 主要工作:一是實(shí)現(xiàn)計(jì)算器的圖形界面;二是實(shí)現(xiàn)按鍵事件和該事件對(duì)應(yīng)的功能綁定,即信號(hào)和對(duì)應(yīng)處理槽函數(shù)的綁定。</p><p><b> 圖形界面的實(shí)現(xiàn)</b></p><p> 通過(guò)分析可知,需要16個(gè)按鍵和一個(gè)顯示框,同時(shí)考慮到整體的排布,還需要水平布局器和垂直布局器。通過(guò)組織這些類我們可以實(shí)現(xiàn)一個(gè)簡(jiǎn)單的帶
58、有數(shù)字0~9,可以進(jìn)行簡(jiǎn)單四則運(yùn)算且具有清屏功能的計(jì)算器。對(duì)于這些類的具體操作會(huì)在后面的代碼中詳細(xì)說(shuō)明。</p><p> 5.1信號(hào)和對(duì)應(yīng)槽函數(shù)的綁定</p><p> 分析計(jì)算器的按鍵我們可以把按鍵事件分為以下三類,一是簡(jiǎn)單的數(shù)字按鍵,</p><p> 主要進(jìn)行數(shù)字的錄入,這類按鍵包括按鍵0~9;二是運(yùn)算操作鍵,用于輸入數(shù)學(xué)運(yùn)算符號(hào),進(jìn)行數(shù)學(xué)運(yùn)算和結(jié)果的
59、顯示,這類按鍵包括“+”,“-”,“*”,“/”,“=”;三是清屏操作鍵,用于顯示框顯示信息的清除。</p><p> 5.2進(jìn)入剛才創(chuàng)建的空工程,雙擊左側(cè)的Calculator.pro,在主編輯框中目前顯示Calculator.pro的內(nèi)容為空,如圖F-6所示。這是因?yàn)槟壳笆裁次募紱](méi)有添加的緣故。</p><p><b> 圖6</b></p>
60、<p> 5.3添加文件calculator.h</p><p> 在工程Calculator上面點(diǎn)擊右鍵,然后點(diǎn)擊Add New,選擇添加C++ Header File(如圖F-7所示),進(jìn)入下一步后輸入文件名calculator.h(如圖F-8所示),然后完成文件的添加。</p><p><b> 圖7</b></p><p&g
61、t;<b> 圖F-8</b></p><p> 5.4添加文件calculator.cpp和main.cpp</p><p> 與添加文件calculator.h的過(guò)程類似,只是在選擇文件類型時(shí)選擇為C++ Source File。完成后可以查看Calculator.pro文件的內(nèi)容,整個(gè)工程的文件結(jié)構(gòu)如圖F-9所示。</p><p>
62、<b> 圖F-9</b></p><p> 第六章 源代碼的分析說(shuō)明</p><p> 6.1對(duì)calculator.h源代碼的簡(jiǎn)要說(shuō)明</p><p> #ifndef CALCULATOR_H</p><p> #define CALCULATOR_H //對(duì)calculator.h頭文件的聲明<
63、/p><p> #include<QWidget>//包含主窗體類</p><p> #include<QPushButton>//包含按鍵類</p><p> #include<QVBoxLayout>//包含垂直布局器類</p><p> #include<QHBoxLayout>//包
64、含水平布局器類</p><p> #include<QLineEdit>//包含顯示框類</p><p> class Calculator : publicQWidget//計(jì)算器繼承自主窗體類</p><p><b> {</b></p><p> Q_OBJECT //必須加上這句,如果要調(diào)
65、用信號(hào),槽函數(shù)的操作的話</p><p><b> public:</b></p><p> Calculator(); //計(jì)算器類的構(gòu)造函數(shù)</p><p> ~Calculator(); //計(jì)算器類的析構(gòu)函數(shù)</p><p> public slots: //定義各個(gè)按鍵按下后對(duì)應(yīng)操作處理的槽函數(shù)
66、</p><p> voidzeroButtonPress();</p><p> voidoneButtonPress();</p><p> voidtwoButtonPress();</p><p> voidthreeButtonPress();</p><p> voidfourButtonPres
67、s();</p><p> voidfiveButtonPress();</p><p> voidsixButtonPress();</p><p> voidsevenButtonPress();</p><p> voideightButtonPress();</p><p> voidnineButt
68、onPress();</p><p> voidaddButtonPress();</p><p> voidsubButtonPress();</p><p> voidmulButtonPress();</p><p> voiddivButtonPress();</p><p> voidclearBu
69、ttonPress();</p><p> voidequButtonPress();</p><p><b> private:</b></p><p> QLineEdit *operateEdit;//聲明顯示框</p><p> QPushButton *zeroButton;//聲明數(shù)字按鍵¹
70、</p><p> QPushButton *oneButton;</p><p> QPushButton *twoButton;</p><p> QPushButton *threeButton;</p><p> QPushButton *fourButton;</p><p> QPushButto
71、n *fiveButton;</p><p> QPushButton *sixButton;</p><p> QPushButton *sevenButton;</p><p> QPushButton *eightButton;</p><p> QPushButton *nineButton;</p><p
72、> QPushButton *clearButton;//聲明運(yùn)算符按鍵</p><p> QPushButton *addButton;</p><p> QPushButton *subButton;</p><p> QPushButton *divButton;</p><p> QPushButton *mulBut
73、ton;</p><p> QPushButton *equButton;</p><p> QHBoxLayout *firstLayout;//聲明水平布局器,該布局器主要對(duì)16個(gè)按鍵進(jìn)行布局</p><p> QHBoxLayout *secondLayout;</p><p> QHBoxLayout *thirdLayout
74、;</p><p> QHBoxLayout *fourthLayout;</p><p> QVBoxLayout *mainLayout;//聲明垂直布局器,該布局器主要對(duì)主窗體上面的空間進(jìn)行排布</p><p> QString input1;//計(jì)算器第一個(gè)運(yùn)算操作數(shù)</p><p> QString input2;//計(jì)算器
75、第二個(gè)運(yùn)算操作數(shù)</p><p> char operate;//運(yùn)算符</p><p><b> };</b></p><p> #endif// CALCULATOR_H</p><p> 對(duì)calculator.cpp源代碼的簡(jiǎn)要說(shuō)明</p><p> 首先是構(gòu)造函數(shù)的實(shí)現(xiàn):<
76、;/p><p> Calculator::Calculator()</p><p><b> {</b></p><p> operateEdit = newQLineEdit(this);//初始化顯示框</p><p> operateEdit->setReadOnly(true); //設(shè)置顯示框?yàn)橹蛔x&
77、lt;/p><p> operateEdit->setText(tr("0"));//初始化顯示框顯示數(shù)據(jù)為0</p><p> zeroButton = newQPushButton;//初始化按鍵</p><p> zeroButton->setText(tr("0"));//設(shè)置按鍵上顯示的標(biāo)簽,以下對(duì)按鍵
78、相關(guān)的操作類似</p><p> oneButton = newQPushButton;</p><p> oneButton->setText(tr("1"));</p><p> twoButton = newQPushButton;</p><p> twoButton->setText(tr(&
79、quot;2"));</p><p> threeButton = newQPushButton;</p><p> threeButton->setText(tr("3"));</p><p> fourButton = newQPushButton;</p><p> fourButton-&g
80、t;setText(tr("4"));</p><p> fiveButton = newQPushButton;</p><p> fiveButton->setText(tr("5"));</p><p> sixButton = newQPushButton;</p><p> si
81、xButton->setText(tr("6"));</p><p> sevenButton = newQPushButton;</p><p> sevenButton->setText(tr("7"));</p><p> eightButton = newQPushButton;</p>
82、<p> eightButton->setText(tr("8"));</p><p> nineButton = newQPushButton;</p><p> nineButton->setText(tr("9"));</p><p> clearButton = newQPushButt
83、on;</p><p> clearButton->setText(tr("Clear"));</p><p> addButton = newQPushButton;</p><p> addButton->setText(tr("+"));</p><p> subButton
84、= newQPushButton;</p><p> subButton->setText(tr("-"));</p><p> mulButton = newQPushButton;</p><p> mulButton->setText(tr("*"));</p><p> di
85、vButton = newQPushButton;</p><p> divButton->setText(tr("/"));</p><p> equButton = newQPushButton;</p><p> equButton->setText(tr("="));</p><p
86、> firstLayout = newQHBoxLayout;//初始化水平布局器firstLayout</p><p> firstLayout->addWidget(zeroButton); //把按鍵zeroButton添加到firstLayout</p><p> firstLayout->addWidget(oneButton); //把按鍵oneButt
87、on添加到firstLayout</p><p> firstLayout->addWidget(twoButton); //把按鍵twoButton添加到firstLayout</p><p> firstLayout->addWidget(addButton); //把按鍵threeButton添加到firstLayout,以下對(duì)水平布局器的操作類似</p>
88、<p> secondLayout = newQHBoxLayout;</p><p> secondLayout->addWidget(threeButton);</p><p> secondLayout->addWidget(fourButton);</p><p> secondLayout->addWidget(fi
89、veButton);</p><p> secondLayout->addWidget(subButton);</p><p> thirdLayout = newQHBoxLayout;</p><p> thirdLayout->addWidget(sixButton);</p><p> thirdLayout-&g
90、t;addWidget(sevenButton);</p><p> thirdLayout->addWidget(eightButton);</p><p> thirdLayout->addWidget(mulButton);</p><p> fourthLayout = newQHBoxLayout;</p><p>
91、; fourthLayout->addWidget(nineButton);</p><p> fourthLayout->addWidget(clearButton);</p><p> fourthLayout->addWidget(equButton);</p><p> fourthLayout->addWidget(divB
92、utton);</p><p> mainLayout = newQVBoxLayout(this);//初始化垂直布局器mainLayout</p><p> mainLayout->addWidget(operateEdit); //把顯示數(shù)據(jù)框operateEdit加到mainLayout</p><p> mainLayout->addLa
93、yout(firstLayout); //把水平布局器firstLayout添加到mainLayout</p><p> mainLayout->addLayout(secondLayout); //把水平布局器secondLayout添加到mainLayout</p><p> mainLayout->addLayout(thirdLayout); //把水平布局器thi
94、rdLayout添加到mainLayout</p><p> mainLayout->addLayout(fourthLayout); //把水平布局器fourthLayout添加到mainLayout</p><p> connect(zeroButton,SIGNAL(clicked()),this,SLOT(zeroButtonPress()));</p>&
95、lt;p> //把按鍵zeroButton的按下事件同zeroButtonPress()綁定到一起,以下操作類似</p><p> connect(oneButton,SIGNAL(clicked()),this,SLOT(oneButtonPress()));</p><p> connect(twoButton,SIGNAL(clicked()),this,SLOT(two
96、ButtonPress()));</p><p> connect(threeButton,SIGNAL(clicked()),this,SLOT(threeButtonPress()));</p><p> connect(fourButton,SIGNAL(clicked()),this,SLOT(fourButtonPress()));</p><p>
97、 connect(fiveButton,SIGNAL(clicked()),this,SLOT(fiveButtonPress()));</p><p> connect(sixButton,SIGNAL(clicked()),this,SLOT(sixButtonPress()));</p><p> connect(sevenButton,SIGNAL(clicked()),thi
98、s,SLOT(sevenButtonPress()));</p><p> connect(eightButton,SIGNAL(clicked()),this,SLOT(eightButtonPress()));</p><p> connect(nineButton,SIGNAL(clicked()),this,SLOT(nineButtonPress()));</p>
99、<p> connect(addButton,SIGNAL(clicked()),this,SLOT(addButtonPress()));</p><p> connect(subButton,SIGNAL(clicked()),this,SLOT(subButtonPress()));</p><p> connect(mulButton,SIGNAL(clicke
100、d()),this,SLOT(mulButtonPress()));</p><p> connect(divButton,SIGNAL(clicked()),this,SLOT(divButtonPress()));</p><p> connect(equButton,SIGNAL(clicked()),this,SLOT(equButtonPress()));</p>
101、<p> connect(clearButton,SIGNAL(clicked()),this,SLOT(clearButtonPress()));</p><p> this->setWindowTitle(tr("Calculator"));//設(shè)置窗體標(biāo)題為Calculator</p><p> input2= "0"
102、;//初始化運(yùn)算操作數(shù)2為0</p><p> input1 = "0";//初始化運(yùn)算操作數(shù)1為0</p><p> operate = '0';//初始化運(yùn)算符為’0’</p><p><b> }</b></p><p> 然后是析構(gòu)函數(shù)的實(shí)現(xiàn):</p>&
103、lt;p> Calculator::~Calculator()//析構(gòu)函數(shù)主要完成對(duì)構(gòu)造函數(shù)中所聲明的QLineEdit、QPushButton、QHBoxLayout、QVBoxLayout類的對(duì)象的回收工作(可以不定義析構(gòu)函數(shù),程序運(yùn)行結(jié)束時(shí)會(huì)自動(dòng)調(diào)用系統(tǒng)默認(rèn)的析構(gòu)函數(shù))</p><p><b> {</b></p><p> if (operateE
104、dit != NULL) //</p><p><b> {</b></p><p> operateEdit = NULL;</p><p> deleteoperateEdit;</p><p><b> }</b></p><p> if (zeroButto
105、n != NULL)</p><p><b> {</b></p><p> zeroButton = NULL;</p><p> deletezeroButton;</p><p><b> }</b></p><p><b> ......</
106、b></p><p><b> }</b></p><p> 根據(jù)前面對(duì)按鍵事件的分析,有數(shù)字輸入鍵,運(yùn)算操作符輸入鍵和清屏鍵三種,故對(duì)每種事件的槽響應(yīng)函數(shù)都只說(shuō)明一種,其他依此類推。</p><p> 數(shù)字輸入鍵響應(yīng)槽函數(shù),以按鍵“1”為例:</p><p> void Calculator::oneBu
107、ttonPress()</p><p><b> {</b></p><p> if(input2=="0")//如果當(dāng)前顯示框?yàn)?</p><p><b> {</b></p><p> input2="1";//變0為1</p>&l
108、t;p><b> }</b></p><p> else//如果當(dāng)前顯示框不為0</p><p><b> {</b></p><p> input2= operateEdit->text();</p><p> input2.append(tr("1"))
109、;//在顯示的數(shù)據(jù)后面追加1</p><p><b> }</b></p><p> operateEdit->setText(input2);//更新顯示框中的顯示信息</p><p><b> }</b></p><p> 運(yùn)算操作符輸入鍵響應(yīng)槽函數(shù),以按鍵“+”為例:</p
110、><p> void Calculator::addButtonPress()</p><p><b> {</b></p><p> floatfirst,second;</p><p> input2= operateEdit->text();//把當(dāng)前顯示的數(shù)據(jù)保存到運(yùn)算操作數(shù)2中</p>
111、<p> if(operate == '0')//如果是第一次按下運(yùn)算符鍵</p><p><b> {</b></p><p> input1 = input2;//把運(yùn)算操作數(shù)2中的數(shù)據(jù)保存到運(yùn)算操作數(shù)1中</p><p> input2= "0";//清除運(yùn)算操作數(shù)2中的數(shù)據(jù)</
112、p><p> operate = '+';//把運(yùn)算符鍵置’+’</p><p><b> }</b></p><p> Else//如果是第二次按下運(yùn)算符鍵</p><p><b> {</b></p><p> second=input2.toFlo
113、at();//把運(yùn)算操作數(shù)2中的數(shù)據(jù)轉(zhuǎn)化為浮點(diǎn)類型</p><p> first=input1.toFloat();//把運(yùn)算操作數(shù)1中的數(shù)據(jù)轉(zhuǎn)化為浮點(diǎn)類型</p><p> switch(operate)//根據(jù)當(dāng)前的運(yùn)算符判斷做何操作</p><p><b> {</b></p><p> case'
114、+':first = first+second;break;</p><p> case'-':first = first-second;break;</p><p> case'*':first = first*second;break;</p><p> case'/':first = first/s
115、econd;break;</p><p><b> }</b></p><p> input1 = QString::number(first,'f',10);//把運(yùn)算的結(jié)果轉(zhuǎn)化成為可以在顯示框顯示的類型</p><p> input2 = "0";//清除運(yùn)算操作數(shù)2中的數(shù)據(jù)</p>
116、<p> operate = '+';//把運(yùn)算符鍵置“+”</p><p><b> }</b></p><p> operateEdit->setText(input1);//更新顯示框中的顯示內(nèi)容</p><p><b> }</b></p><p>&
117、lt;b> 清屏操作響應(yīng)函數(shù):</b></p><p> void Calculator::clearButtonPress()</p><p><b> {</b></p><p> input2="0";//把運(yùn)算操作數(shù)2清零</p><p> input1="
118、;0";//把運(yùn)算操作數(shù)1清零</p><p> operateEdit->setText(input2); //更新顯示框中的顯示內(nèi)容</p><p><b> }</b></p><p> 對(duì)main.cpp源代碼的簡(jiǎn)要說(shuō)明</p><p> #include <QApplication
119、>//包含應(yīng)用程序類</p><p> #include "calculator.h"//包含計(jì)算器類</p><p> int main(intargc, char *argv[])//main函數(shù)的標(biāo)準(zhǔn)寫法</p><p><b> {</b></p><p> QApplicati
120、on app(argc, argv); //創(chuàng)建一個(gè)QApplication對(duì)象,管理應(yīng)用程序的資源</p><p> Calculator mainwindow; //產(chǎn)生一個(gè)計(jì)算器對(duì)象</p><p> mainwindow.showMaximized();//顯示計(jì)算器窗體(默認(rèn)以最大化的形式顯示)</p><p> return app.exec();
121、//讓程序進(jìn)入消息循環(huán),等待可能的菜單、工具條、鼠標(biāo)等的輸入,進(jìn)行響應(yīng)。</p><p><b> }</b></p><p><b> 第七章 編譯運(yùn)行</b></p><p> 7.1完成源程序的編輯后,可以直接點(diǎn)擊圖F-10中所示的運(yùn)行按鈕,這時(shí)QtCreator會(huì)自動(dòng)編譯源程序并生成可執(zhí)行程序。</p&
122、gt;<p><b> 圖F-10</b></p><p> 7.2計(jì)算器程序在界面如圖F-11所示。</p><p><b> 圖F-11</b></p><p> 第八章 計(jì)算器程序的移植</p><p> 上面所說(shuō)的可執(zhí)行程序是由QtCreator調(diào)用qmake命令生成
溫馨提示
- 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于qt的科學(xué)計(jì)算器的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文.doc
- 電子科學(xué)與技術(shù)專業(yè)畢業(yè)論文
- 基于qt的科學(xué)計(jì)算器的設(shè)計(jì)與實(shí)現(xiàn)
- 科學(xué)計(jì)算器設(shè)計(jì)-本科畢業(yè)論文
- 計(jì)算器畢業(yè)論文-- 基于單片機(jī)的電子計(jì)算器設(shè)計(jì)
- 基于labview的科學(xué)計(jì)算器
- 計(jì)算器畢業(yè)論文_——基于單片機(jī)的計(jì)算器設(shè)計(jì)
- 基于stm32的不發(fā)熱選針器控制板設(shè)計(jì)-電子科學(xué)與技術(shù)畢業(yè)論文
- 基于單片機(jī)的電子計(jì)算器設(shè)計(jì)【畢業(yè)論文】
- 計(jì)算機(jī)科學(xué)與技術(shù)畢業(yè)論文
- 畢業(yè)論文計(jì)算機(jī)科學(xué)與技術(shù)
- 計(jì)算機(jī)科學(xué)與技術(shù)畢業(yè)論文
- 計(jì)算機(jī)科學(xué)與技術(shù)畢業(yè)論文
- 計(jì)算機(jī)科學(xué)與技術(shù)畢業(yè)論文
- 計(jì)算機(jī)科學(xué)與技術(shù)畢業(yè)論文
- 計(jì)算機(jī)科學(xué)與技術(shù)畢業(yè)論文
- 微動(dòng)目標(biāo)isar成像算法研究-電子科學(xué)與技術(shù)畢業(yè)論文開(kāi)題報(bào)告
- 計(jì)算機(jī)科學(xué)與技術(shù)畢業(yè)論文
- 計(jì)算機(jī)科學(xué)與技術(shù)畢業(yè)論文
- 簡(jiǎn)易計(jì)算器畢業(yè)論文
評(píng)論
0/150
提交評(píng)論