《C++語言程序設(shè)計(jì)》設(shè)計(jì)報(bào)告材料_第1頁
《C++語言程序設(shè)計(jì)》設(shè)計(jì)報(bào)告材料_第2頁
《C++語言程序設(shè)計(jì)》設(shè)計(jì)報(bào)告材料_第3頁
《C++語言程序設(shè)計(jì)》設(shè)計(jì)報(bào)告材料_第4頁
《C++語言程序設(shè)計(jì)》設(shè)計(jì)報(bào)告材料_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、中南大學(xué)本科生課程設(shè)計(jì)(實(shí)踐)任務(wù)書、設(shè)計(jì)報(bào)告(C+語言程序設(shè)計(jì))題目計(jì)算器的設(shè)計(jì)學(xué)生姓名文楊滔指導(dǎo)教師劉雄鷹學(xué)院機(jī)電工程學(xué)院專業(yè)班級(jí)車輛一班學(xué)生學(xué)號(hào)0815150104計(jì)算機(jī)基礎(chǔ)教學(xué)實(shí)驗(yàn)中心2016年6 月 30 日計(jì)算器的設(shè)計(jì)摘要:為提高學(xué)生所學(xué) C+語言程序設(shè)計(jì)基礎(chǔ)綜合運(yùn)用、設(shè)計(jì)、 編程及動(dòng)手能力,使學(xué)生能夠在已學(xué)的基礎(chǔ)上自學(xué)地提高擴(kuò)展自我知 識(shí)的技能,掌握自我表達(dá)、書寫組織和總結(jié)。特要求用MicrosoftVisual Studio 2010 完成CLR窗體應(yīng)用程序。自己選擇一個(gè)計(jì)算窗 口應(yīng)用程序。完成系統(tǒng)需求分析,即功能和數(shù)據(jù)需求,并進(jìn)行系統(tǒng)設(shè) 計(jì)即功能模塊設(shè)計(jì)、界面設(shè)計(jì)以及編程。系

2、統(tǒng)調(diào)試完后編寫設(shè)計(jì)報(bào)告。關(guān)鍵詞:Microsoft Visual Studio 2010 CLR窗體應(yīng)用程序計(jì)算窗口1計(jì)算器系統(tǒng)開發(fā)設(shè)計(jì)思想根據(jù)課程設(shè)計(jì)的要求,我們的目的是用Microsoft Visual Studio 2010完成CLR窗體應(yīng)用程序,設(shè)計(jì)出一個(gè)計(jì)算或繪圖類窗口應(yīng)用程 序,要求:功能:1) 用窗體及控件進(jìn)行數(shù)據(jù)的輸入和輸出2) 輸入方便和可靠。3) 結(jié)果正確。界面設(shè)計(jì)1) 使用方便2) 操作簡(jiǎn)單3) 美觀通過本課程設(shè)計(jì),提高我們所學(xué)C+語言程序設(shè)計(jì)基礎(chǔ)綜合運(yùn)用、 設(shè)計(jì)、編程及動(dòng)手能力,能夠在已學(xué)的基礎(chǔ)上自學(xué)地提高擴(kuò)展自我知 識(shí)的技能,掌握自我表達(dá)、書寫組織和總結(jié)。初步培養(yǎng)通過

3、面向?qū)ο?的思想解決問題的能力,熟悉軟件開發(fā)過程,增強(qiáng)對(duì)相關(guān)專業(yè)知識(shí)的 感性認(rèn)識(shí),掌握基本軟件開發(fā)技能,提高應(yīng)用所學(xué)知識(shí)在實(shí)踐中發(fā)現(xiàn) 問題、分析問題和解決問題的能力。2計(jì)算器系統(tǒng)功能及系統(tǒng)設(shè)計(jì)介紹使用Visual Studio可以制作出很多軟件,今天我使用VisualStudio制止小型計(jì)算器,制作成功后可以把自己制作計(jì)算器放在桌 面上供自己使用;更可以根據(jù)自己的需求制作各種各樣的計(jì)算器。我今天制作的是簡(jiǎn)單的計(jì)算器,復(fù)雜的可以在簡(jiǎn)單的基礎(chǔ)上開發(fā)。我選擇的題目是設(shè)計(jì)一個(gè)科學(xué)計(jì)算器(包括三角函數(shù)、指數(shù)函數(shù) 等等基本函數(shù)計(jì)算)的窗體應(yīng)用程序。系統(tǒng)設(shè)計(jì)過程:a)創(chuàng)建項(xiàng)目:在 Microsoft Vis

4、ual Studio 2010 C# 中,建立個(gè)新工程,創(chuàng)建一個(gè)新的對(duì)話框。b)計(jì)算機(jī)界面設(shè)計(jì):1. 向Forml中添加一個(gè)textbox和21個(gè)butt on按鈕;2. 修改butt on按鈕的text屬性,如圖所示:c)數(shù)字鍵及小數(shù)點(diǎn)代碼設(shè)計(jì):private void butt on 1_Click(object sen der,Eve ntArgs e)textBox1.Text = textBox1.Text +1;private void butt on 2_Click(object sen der,Eve ntArgs e)textBox1.Text = textBox1.Text

5、 +2;private void butt on 3_Click(object sen der, Eve ntArgs e)textBox1.Text = textBox1.Text +3;private void butt on 4_Click(object sen der, Eve ntArgs e)textBox1.Text = textBox1.Text +4;private void butt on 5_Click(object sen der, Eve ntArgs e)textBox1.Text = textBox1.Text +5;private void butt on 6_

6、Click(object sen der, Eve ntArgs e)textBox1.Text = textBox1.Text +6;private void butt on 7_Click(object sen der, Eve ntArgs e)textBox1.Text = textBox1.Text +7;private void butt on 8_Click(object sen der, Eve ntArgs e)textBoxl.Text = textBoxl.Text +8private void butt on 9_Click(object sen der,Even tA

7、rgs e)textBox1.Text = textBox1.Text +9;private void butt on 10_Click(object sen der,Even tArgs e)textBox1.Text = textBox1.Text +0;private void butt on 11_Click(object sen der,Even tArgs e)textBox1.Text = textBox1.Text +d)加減乘除算法的實(shí)現(xiàn):“ +”將控件名為button12更名為“ +”,并輸入以下程序private void butt on 12_Click(object

8、sen der,Eve ntArgs e)Butt on btn 二( Butt on )se nder;textBox1.Text = textBox1.Text + bt n.Text將控件名為button13更名為“-”,并輸入以下程序private void butt on 13_Click( object sen der, Eve ntArgs e)Butt on btn 二( Butt on )se nder;textBox1.Text = textBox1.Text +bt n.Text ;“* ”將控件名為button14更名為“ x”,并輸入以下程序:private void

9、 butt on 14_Click( object sen der, Eve ntArgs e)Butt on btn 二( Butt on )se nder;textBox1.Text = textBox1.Text + bt n.Text ;“/”將控件名為button15更名為“ /”,并輸入以下程序:private void butt on 15_Click(object sen der, Eve ntArgs e)Butt on btn 二( Butt on )se nder;textBox1.Text = textBox1.Text + btn .Text ;e) 三角函數(shù)等基本初

10、等函數(shù)算法的實(shí)現(xiàn):“sinx ”將控件名為button16更名為“ sin ”,并輸入以下程序:private void butt on 16_Click(object sen der, Eve ntArgs e)Butt on btn = (Butt on )se nder;textBoxl.Text = textBoxl.Text +bt n.Text ;“cosx”將控件名為button17更名為“cos”,并輸入以下程序:private void butt on 17_Click(object sen der, Eve ntArgs e)Butt on btn = (Butt on )

11、se nder;textBox1.Text = textBox1.Text +bt n.Text ;“tanx ”將控件名為button18更名為“ tan ”,并輸入以下程序:private void butt on 18_Click(object sen der, Eve ntArgs e)Butt on btn = (Butt on )se nder;textBox1.Text = textBox1.Text + bt n.Text ;“ lgx ”將控件名為butt on 19更名為“ lg ”,并輸入以下程序:private void butt on 19_Click(object

12、sen der, Eve ntArgs e)Butt on btn = (Butt on )se nder;textBox1.Text = textBox1.Text + btn .Text ;f) 顯示結(jié)果的算法實(shí)現(xiàn)將控件名為button20更名為“二”,并輸入以下程序:private void butt on 20_Click(object sen der, Eve ntArgs e)trydouble d_result;stri ng s_txt = textBox1.Text;int space二 s_txtn dexOf();string s1 = s_txt.Substring(0

13、, space);charoperati onCo nvert.ToChar(s_txt.Substri ng(space + 1), 1);stri ng s2 = s_txt.Substri ng(space + 3);double arg1 = Conv ert.ToDouble(s1);double arg2 = Conv ert.ToDouble(s2);switch (operatio n)case +:d_result = arg1 + arg2;break;case -:d_result = arg1 - arg2;break;case x:d_result = argl *

14、arg2;break;case /:if (arg2 = 0)/MessageBox.Show(” 錯(cuò)誤);throw new Applicati on Exceptio n();elsed_result = arg1 / arg2;break;default:throw new Applicati on Exceptio n();textBox1.Text = d_result.ToStri ng();catchdouble d;double pi =Math .PI; stri ng s_txt = textBoxl.Text;int space = s_txt .In dexOf( ,1

15、); charoperati onCon vert.ToChar(s_txt.Substri ng(0), 1); string s2 = s_txt.Substring(space+1); double arg2 = Conv ert.ToDouble(s2); double a = arg2 * pi / 180;switch (operatio n)case s:d = System.Math.Si n(a);textBoxl.Text = d.ToStri ng(); break;case c:d = System.Math.Cos(a); textBoxl.Text = d.ToSt

16、ri ng(); break;case t:d = System.Math.Ta n(a); textBoxl.Text = d.ToStri ng(); break;case T:d = System.Math.Log10(arg2);textBoxl.Text = d.ToStri ng();break;g) 清除的算法實(shí)現(xiàn)將控件名為butto n21更名為“ del”,并輸入以下程序private void butt on 21_Click(object sen der, Eve ntArgs e)textBox1.Text =h)調(diào)試與運(yùn)行:3.計(jì)算器系統(tǒng)開發(fā)的體會(huì)我是一個(gè)平時(shí)不怎么玩

17、電腦的人,對(duì)編程一竅不知,在剛開始做 的時(shí)候,對(duì)于窗體應(yīng)用程序這方面的操作是絲毫不懂,后來聽老師講課,以及自己在實(shí)踐書上找到相關(guān)的知識(shí),才漸漸的知道做簡(jiǎn)易計(jì)算器的大概步驟,首先打開 Microsoft Visual Studio2010,把語言配置成C#.net。創(chuàng)建出一個(gè) Windows窗體應(yīng)用程序。然后再自動(dòng) 生成的Form1面板上面拖拽出一個(gè)textbox空間,接著拖拽出相應(yīng)的 按鈕控件。每一個(gè)控件都要添加事件。textbox控件的單擊事件可以 設(shè)置為 textBox1.Text =;即一旦點(diǎn)擊輸入框,輸入框的文本就自動(dòng)置為“”(沒有任何內(nèi)容),其中 textbox1是textbox控

18、件的名字,可以在屬性框里面設(shè)定。接下來對(duì)按鈕1,234,5,6,7,8,9 0, .,*,+,-,/,等符號(hào)添加事件。每個(gè)按鈕都要添加事件,但是 可以是同一個(gè)事件。比如為 butt on1添加 private voidbutto n1_Click(object sen der, Eve ntArgs e)事件后,接著對(duì)其余的控件添加事件,點(diǎn)開事件的下拉框,選擇butt on 1_Click事件,由于好多按鈕的單擊事件都相似,所以只在一個(gè)事件函數(shù)里面處理即可。雖然百度來的資料看似簡(jiǎn)單,但當(dāng)時(shí)比較急于求成,所以一連 做了兩個(gè)工程文件都失敗了,后來才漸漸放下浮躁的心,去查資料, 問老師,咨詢朋友,找

19、代碼,創(chuàng)新思路。所以,在經(jīng)歷幾次失敗后, 在朋友的提醒下,漸漸地,我知道了用C#編寫科學(xué)計(jì)算器的程序更加簡(jiǎn)單明白,然后我開始尋找C#的代碼,研究各個(gè)代碼的含義,trycatch、indexof、substring 等的用法,基本初等函數(shù)的用法(d=Math.Cos),編寫自己的計(jì)算器程序代碼。我的計(jì)算器并沒有什么特別的特點(diǎn),但是在基礎(chǔ)功能實(shí)現(xiàn)了的 情況下,我盡可能的實(shí)現(xiàn)一些我會(huì)做的科學(xué)運(yùn)算,來提高這個(gè)計(jì)算 器的價(jià)值。在初期的時(shí)候,會(huì)因?yàn)榘粹o問題而出現(xiàn)無法寫入的錯(cuò)誤, 因?yàn)閿?shù)字類型不統(tǒng)一而無法實(shí)現(xiàn)計(jì)算功能,但是根據(jù)所給的錯(cuò)誤一 個(gè)一個(gè)的查找,并刪除多余的按鈕,強(qiáng)制轉(zhuǎn)換數(shù)字類型,才得到了 解決,在

20、這個(gè)過程中我也明白了程序設(shè)計(jì)的嚴(yán)謹(jǐn)性。在整個(gè)計(jì)算器 程序設(shè)計(jì)中,我掌握了 Microsoft Visual Studio 2010 的用法,學(xué) 會(huì)了 CLR窗體應(yīng)用程序代碼及窗體的設(shè)計(jì),對(duì)于之前學(xué)習(xí)的C+g序 設(shè)計(jì)理解更加深入,再加上搜索,我得到了很多的關(guān)于C#的用法,深入學(xué)習(xí)了 C#勺字符串、數(shù)組的使用,總之的確是獲益匪淺。雖然 我設(shè)計(jì)的計(jì)算器功能上并不全,還存在著一些問題,但是在這個(gè)實(shí) 踐過程中,我的思考,動(dòng)手能力得到了充分的利用,更加明白了要 創(chuàng)新思路,這也是實(shí)踐的目的。通過實(shí)踐加強(qiáng)對(duì)程序設(shè)計(jì)語言課程 知識(shí)點(diǎn)的理解和掌握,培養(yǎng)對(duì)課程知識(shí)綜合運(yùn)用能力、實(shí)際分析問 題能力及編程能力,養(yǎng)成良好的習(xí)慣。通過實(shí)踐能進(jìn)一步領(lǐng)會(huì)程序 設(shè)計(jì)的特

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(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)論