版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
本科生課程設(shè)計(實踐)任務(wù)書、設(shè)計報告(C卄語言程序設(shè)計)題目 計算器的設(shè)計學(xué)生姓名 文楊滔—指導(dǎo)教師 劉雄鷹—學(xué)院 機(jī)電工程學(xué)院專業(yè)班級 車輛一班學(xué)生學(xué)號計算機(jī)基礎(chǔ)教學(xué)實驗中心2016年6月30日計算器的設(shè)計摘要:為提高學(xué)生所學(xué)C++語言程序設(shè)計基礎(chǔ)綜合運用、設(shè)計、編程及動手能力,使學(xué)生能夠在已學(xué)的基礎(chǔ)上自學(xué)地提高擴(kuò)展自我知識的技能,掌握自我表達(dá)、書寫組織和總結(jié)。特要求用MicrosoftVisualStudio2010完成CLR窗體應(yīng)用程序。自己選擇一個計算窗口應(yīng)用程序。完成系統(tǒng)需求分析,即功能和數(shù)據(jù)需求,并進(jìn)行系統(tǒng)設(shè)計即功能模塊設(shè)計、界面設(shè)計以及編程。系統(tǒng)調(diào)試完后編寫設(shè)計報告。關(guān)鍵詞:MicrosoftVisualStudio2010CLR窗體應(yīng)用程序計算窗口1計算器系統(tǒng)開發(fā)設(shè)計思想根據(jù)課程設(shè)計的要求,我們的目的是用MicrosoftVisualStudio2010完成CLR窗體應(yīng)用程序,設(shè)計出一個計算或繪圖類窗口應(yīng)用程序,要求:功能:用窗體及控件進(jìn)行數(shù)據(jù)的輸入和輸出輸入方便和可靠。結(jié)果正確。界面設(shè)計使用方便操作簡單美觀通過本課程設(shè)計,提高我們所學(xué)C++語言程序設(shè)計基礎(chǔ)綜合運用、設(shè)計、編程及動手能力,能夠在已學(xué)的基礎(chǔ)上自學(xué)地提高擴(kuò)展自我知識的技能,掌握自我表達(dá)、書寫組織和總結(jié)。初步培養(yǎng)通過面向?qū)ο蟮乃枷虢鉀Q問題的能力,熟悉軟件開發(fā)過程,增強(qiáng)對相關(guān)專業(yè)知識的感性認(rèn)識,掌握基本軟件開發(fā)技能,提高應(yīng)用所學(xué)知識在實踐中發(fā)現(xiàn)問題、分析問題和解決問題的能力。2計算器系統(tǒng)功能及系統(tǒng)設(shè)計介紹使用VisualStudio可以制作出很多軟件,今天我使用VisualStudio制止小型計算器,制作成功后可以把自己制作計算器放在桌面上供自己使用;更可以根據(jù)自己的需求制作各種各樣的計算器。我今天制作的是簡單的計算器,復(fù)雜的可以在簡單的基礎(chǔ)上開發(fā)。我選擇的題目是設(shè)計一個科學(xué)計算器(包括三角函數(shù)、指數(shù)函數(shù)等等基本函數(shù)計算)的窗體應(yīng)用程序。?系統(tǒng)設(shè)計過程:a)創(chuàng)建項目:在MicrosoftVisualStudio2010C#中,建立一個新工程,創(chuàng)建一個新的對話框。b)計算機(jī)界面設(shè)計:向Forml中添加一個textbox和21個button按鈕;修改button按鈕的text屬性,如圖所示:數(shù)字鍵及小數(shù)點代碼設(shè)計:privatevoidbutton1_Click(objectsender,EventArgse){textBox1.Text=textBox1.Text+"1";}privatevoidbutton2_Click(objectsender,EventArgse){textBox1.Text=textBox1.Text+"2";{textBox1.Text=textBox1.Text+"3";}privatevoidbutton4_Click(objectsender,EventArgse){textBox1.Text=textBox1.Text+"4";}privatevoidbutton5_Click(objectsender,EventArgse){textBox1.Text=textBox1.Text+"5";}privatevoidbutton6_Click(objectsender,EventArgse){textBox1.Text=textBox1.Text+"6";}privatevoidbutton7_Click(objectsender,EventArgse){textBox1.Text=textBox1.Text+"7";}privatevoidbutton8_Click(objectsender,EventArgse)textBox1.Text=textBox1.Text+"8";}privatevoidbutton9_Click(objectsender,EventArgse){textBox1.Text=textBox1.Text+"9";}privatevoidbutton10_Click(objectsender,EventArgse){textBox1.Text=textBox1.Text+"0";}privatevoidbutton11_Click(objectsender,EventArgse){textBox1.Text=textBox1.Text+".";}加減乘除算法的實現(xiàn):“+”將控件名為buttonl2更名為“+”,并輸入以下程序:privatevoidbuttonl2_Click(objectsender,EventArgse){Buttonbtn=(Button)sender;textBox1.Text=textBox1.Text+btn.Text;}“-”將控件名為buttonl3更名為“-”,并輸入以下程序:{Buttonbtn=(Button)sender;textBox1.Text=textBox1.Text+btn.Text;}“*”將控件名為buttonl4更名為“x”,并輸入以下程序:privatevoidbutton14_Click(objectsender,EventArgse){Buttonbtn=(Button)sender;textBox1.Text=textBox1.Text+btn.Text;}“/”將控件名為buttonl5更名為“/”,并輸入以下程序:privatevoidbuttonl5_Click(objectsender,EventArgse){Buttonbtn=(Button)sender;textBox1.Text=textBox1.Text+btn.Text}三角函數(shù)等基本初等函數(shù)算法的實現(xiàn):“sinx”將控件名為buttonl6更名為“sin”,并輸入以下程序:privatevoidbutton16_Click(objectsender,EventArgse){Buttonbtn=(Button)sender;textBox1.Text=textBox1.Text+btn.Text;“cosx”將控件名為buttonl7更名為“cos”,并輸入以下程序:privatevoidbutton17_Click(objectsender,EventArgse){Buttonbtn=(Button)sender;textBox1.Text=textBox1.Text+btn.Text;}“tanx”將控件名為buttonl8更名為“tan”,并輸入以下程序:privatevoidbutton18_Click(objectsender,EventArgse){Buttonbtn=(Button)sender;textBox1.Text=textBox1.Text+btn.Text;}“l(fā)gx”將控件名為buttonl9更名為“l(fā)g”,并輸入以下程序:privatevoidbutton19_Click(objectsender,EventArgse){Buttonbtn=(Button)sender;textBox1.Text=textBox1.Text+btn.Text}顯示結(jié)果的算法實現(xiàn)將控件名為button20更名為“二”,并輸入以下程序:{try{doubled_result;strings_txt=textBox1.Text;intspace=s_txt.IndexOf('');strings1=s_txt.Substring(0,space);charoperation=Convert.ToChar(s_txt.Substring((space+1),1));strings2=s_txt.Substring(space+3);doublearg1=Convert.ToDouble(s1);doublearg2=Convert.ToDouble(s2);switch(operation){?I?case'+':d_result=arg1+arg2;break;case'-':d_result=arg1-arg2;break;case'x':d_result=arg1*arg2;break;?/?case'/':if(arg2==0){//MessageBox.Show("錯誤“);thrownewApplicationException();}else{d_result=arg1/arg2;}break;default:thrownewApplicationException();}textBox1.Text=d_result.ToString();}catch{doubled;doublepi=Math.PI;strings_txt=textBox1.Text;intspace=s_txt.IndexOf('',1);charoperationConvert.ToChar(s_txt.Substring((0),1));strings2=s_txt.Substring(space+1);doublearg2=Convert.ToDouble(s2);doublea=arg2*pi/180;switch(operation){case's':d=System.Math.Sin(a);textBox1.Text=d.ToString();break;case'c':d=System.Math.Cos(a);textBox1.Text=d.ToString();break;?Jcase't':d=System.Math.Tan(a);textBox1.Text=d.ToString();break;case'l':d=System.Math.Log10(arg2);;textBox1.Text=d.ToString();break;}}清除的算法實現(xiàn)將控件名為button21更名為“del”,并輸入以下程序:privatevoidbutton21_Click(objectsender,EventArgse){textBox1.Text="";}調(diào)試與運行:3.計算器系統(tǒng)開發(fā)的體會我是一個平時不怎么玩電腦的人,對編程一竅不知,在剛開始做的時候,對于窗體應(yīng)用程序這方面的操作是絲毫不懂,后來聽老師講課,以及自己在實踐書上找到相關(guān)的知識,才漸漸的知道做簡易計算器的大概步驟,首先打開MicrosoftVisualStudio2010,把語言配置成C#.net。創(chuàng)建出一個Windows窗體應(yīng)用程序。然后再自動生成的Forml面板上面拖拽出一個textbox空間,接著拖拽出相應(yīng)的按鈕控件。每一個控件都要添加事件。textbox控件的單擊事件可以設(shè)置為 textBoxl.Text二"";即一旦點擊輸入框,輸入框的文本就自動置為“”(沒有任何內(nèi)容),其中textbox1是textbox控件的名字,可以在屬性框里面設(shè)定。接下來對按鈕1,2,3,4,5,6,7,8,9,0,.,*,+,-,/,等符號添加事件。每個按鈕都要添加事件,但是可以是同一個事件。比如為button1添加privatevoidbutton1_Click(objectsender,EventArgse)事件后,接著對其余的控件添加事件,點開事件的下拉框,選擇button1_Click事件,由于好多按鈕的單擊事件都相似,所以只在一個事件函數(shù)里面處理即可。雖然百度來的資料看似簡單,但當(dāng)時比較急于求成,所以一連做了兩個工程文件都失敗了,后來才漸漸放下浮躁的心,去查資料,問老師,咨詢朋友,找代碼,創(chuàng)新思路。所以,在經(jīng)歷幾次失敗后,在朋友的提醒下,漸漸地,我知道了用C#編寫科學(xué)計算器的程序更加簡單明白,然后我開始尋找C#的代碼,研究各個代碼的含義,try???catch、indexof、substring等的用法,基本初等函數(shù)的用法(d=Math.Cos(f)),編寫自己的計算器程序代碼。我的計算器并沒有什么特別的特點,但是在基礎(chǔ)功能實現(xiàn)了的情況下,我盡可能的實現(xiàn)一些我會做的科學(xué)運算,來提高這個計算器的價值。在初期的時候,會因為按鈕問題而出現(xiàn)無法寫入的錯誤,因為數(shù)字類型不統(tǒng)一而無法實現(xiàn)計算功能,但是根據(jù)所給的錯誤一個一個的查找,并刪除多余的按鈕,強(qiáng)制轉(zhuǎn)換數(shù)字類型,才得到了解決,在這個過程中我也明白了程序設(shè)計的嚴(yán)謹(jǐn)性。在整個計算器程序設(shè)計中,我掌握了MicrosoftVisualStudio2010的用法,學(xué)會了CLR窗體應(yīng)用程序代碼及窗體的設(shè)計,對于之前學(xué)習(xí)的C++程序設(shè)計理解更加深入,再加上搜索,我得到了很多的關(guān)于C#的用法,深入學(xué)習(xí)了C#的字符串、數(shù)組的使用,總之的確是獲益匪淺。雖然我設(shè)計的計算器功能上并不全,還存在著一些問題,但是在這個實踐過程中,我的思考,動手能力得到了充分的利用,更加明白了要創(chuàng)新思路,這也是實踐的目的。通過實踐加強(qiáng)對程序設(shè)計語言課程知識點的理解和掌握,培養(yǎng)對課程知識綜合運用能力、實際分析問題能力及編程能力,養(yǎng)成良好的習(xí)慣。通過實踐能進(jìn)一步領(lǐng)會程序設(shè)計的特點和應(yīng)用,提高運用C++語言以及面向?qū)ο笾R解決實際問題
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 銀行行內(nèi)培訓(xùn)課程
- 培訓(xùn)師自我評價
- 陜西省扶風(fēng)縣扶風(fēng)高中2024-2025學(xué)年度高二物理上學(xué)期期中檢測試題
- 河南省鄭州市登封市2024-2025學(xué)年二年級上學(xué)期期中數(shù)學(xué)試題
- 2024--2025學(xué)年江蘇省宿遷市沭陽縣南湖初級中學(xué)八年級(上)第一次月考數(shù)學(xué)試卷(含答案)
- T-YNRZ 024-2024 黑老虎種植技術(shù)規(guī)程
- 內(nèi)蒙古自治區(qū)通遼市科爾沁左翼中旗聯(lián)盟校2024-2025學(xué)年三年級上學(xué)期期中考試英語試題
- 市場營銷學(xué)-企業(yè)管理出版社
- Windows Server網(wǎng)絡(luò)管理項目教程(Windows Server 2022)(微課版)4.4 任務(wù)3 資源記錄
- 語法填空專題復(fù)習(xí)練習(xí)及答案
- 華為自評審核表 Quality System Audit
- 第四章 聚氨酯樹脂
- 鏈?zhǔn)轿仐U減速器(輸送機(jī)減速器)
- 高柱混凝土施工方案
- 監(jiān)理質(zhì)量管理體系
- MES運行管理辦法
- 鋼結(jié)構(gòu)專用漆(醇酸類)內(nèi)控標(biāo)準(zhǔn)
- 地層編號原則
- 廠區(qū)吸煙管理規(guī)定(共2頁)
- 2020年住房和城鄉(xiāng)建設(shè)行業(yè)人員繼續(xù)教育(八大員繼續(xù)教育)材料員繼續(xù)教育考試題庫集
- 項目一-制作手錘(共39頁)
評論
0/150
提交評論