freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

c計(jì)算器課程設(shè)計(jì)--計(jì)算器程序設(shè)計(jì)-在線瀏覽

2024-08-01 19:22本頁(yè)面
  

【正文】 的顏 色。 (6)輸入的原始數(shù)據(jù)、運(yùn)算中間數(shù)據(jù)和結(jié)果都顯示在窗口頂部的同一個(gè)標(biāo)簽中。 (8)程序可以能自動(dòng)判斷輸入數(shù)據(jù)的正確性,保證不出現(xiàn)多于一個(gè)小數(shù)點(diǎn)、以 0開頭等不正常現(xiàn)象。在此類中對(duì)于所有的對(duì)于按鈕的繪制工作都是在 DrawItem函數(shù)中完成的,實(shí)現(xiàn)按鈕對(duì)鼠標(biāo)不同的位置和動(dòng) 作改變不同的顏色,并且按鈕的客戶區(qū)域變成一個(gè)橢圓。在 OnDisplay函數(shù)中設(shè)置編輯框的顯示文本,再調(diào)用 OnDraw函數(shù)將其顯示出來,并用指定的畫刷填充客戶區(qū),并且用指定的顏色繪制顯示文本。在CCalculatorDlg::OnCreate函數(shù)中設(shè)定對(duì)話框的初始大小與位置,可以在這個(gè)對(duì)話框中進(jìn)行窗口風(fēng)格修改,位置設(shè)置等操作,然后添加菜單項(xiàng) ID_EXTEND的響應(yīng) 函數(shù) OnExtend。 Lacation文本框是指項(xiàng)目的本地路徑。 開始 輸入第一個(gè)數(shù) 輸入第二個(gè)數(shù) +、 、 *、 /等 x^ log、 tan、 cos、sin、等 顯示結(jié)果 按“ CE”清零 結(jié)束 C++課程設(shè)計(jì) 5 (2)單擊 OK按鈕,彈出 MFC AppWinzard_Step1對(duì)話框。 (3)單擊 Next按鈕,彈出 MFC AppWinzard_Step2 of4對(duì)話框,如圖所示。 C++課程設(shè)計(jì) 6 (5)單擊 Next按鈕,彈出 MFC AppWinzard_Step4 of4對(duì)話框,如圖所示。 界面設(shè)計(jì) (1)編輯對(duì)話框及控件資源 利用 Visual C++提供的資源編輯器對(duì)對(duì)話框資源 進(jìn)行編輯。添加一個(gè) Edit控件,其控件 ID為 IDC_EDIT1。在按鈕上單擊鼠標(biāo)右鍵,在彈出的快捷菜單中選擇屬性選項(xiàng),此時(shí)也彈出 Push Button屬性對(duì)話框,如圖所示, 在該對(duì)話框中輸入控件的 ID值和標(biāo)題屬性。 表 1按鈕控件資源清單 : 按鈕名稱 按鈕 ID 用途 0 B0 按鍵 0 1 B1 按鍵 1 2 B2 按鍵 2 3 B3 按鍵 3 4 B4 按鍵 4 5 B5 按鍵 5 6 B6 按鍵 6 7 B7 按鍵 7 8 B8 按鍵 8 9 B9 按鍵 9 . Bd 小數(shù)點(diǎn) C++課程設(shè)計(jì) 8 = Brun 求值 + Badd 加號(hào) Bsub 減號(hào) * Bmult 乘號(hào) / Bdiv 除號(hào) CE ce 清屏 Sqrt sqrt 開方 sin sin 正弦 cos cos 余弦 tan tan 正切 x^2 pf 平方 log log 對(duì)數(shù) 所有按鍵都添加好后的 效果如圖 2所示。如 圖 3所示: C++課程設(shè)計(jì) 9 圖 3為按鈕控件添加消息響應(yīng) (3)關(guān)聯(lián)控件與對(duì)象 在 CAboutDlg類的聲明中,已經(jīng)為編輯框、靜態(tài)框及每一個(gè)按鈕聲明了相應(yīng)類型的對(duì)象與之對(duì)應(yīng)。 圖 4關(guān)聯(lián)控件與對(duì)象 C++課程設(shè)計(jì) 10 (4)添加背景圖 為對(duì)話框添加背景圖,以增加界面的美觀性。然后加入一個(gè) Static控件,將其 Type屬性設(shè)為 Bitmap,并為 Image屬性選擇位圖資源,如圖 5所示。 圖 6運(yùn)行結(jié)果圖 數(shù)值計(jì)算功能的實(shí)現(xiàn) ○ 1 具體功能的實(shí)現(xiàn)首先添加成員變量。所以必須聲明兩個(gè)浮點(diǎn)數(shù),分別用來表示初始操作數(shù)和結(jié)果操作數(shù),同時(shí),必須聲明兩個(gè)字符串類型的變量,分別用來顯示初始操作數(shù)。 定義 如下: public: CZZDlg(CWnd* pParent = NULL)。 //保存輸入的數(shù)字 bool m_done,opt。 //成員函數(shù),處理輸入的數(shù)據(jù) double num_1,num_2。//輸入運(yùn)算符后要調(diào)用的函數(shù) int yun。//判斷小數(shù)點(diǎn)是否被點(diǎn)擊 int n。 void OnMnuCut()。 void OnMnuPaste()。 ○ 2 當(dāng)小數(shù)點(diǎn)鍵被單擊時(shí),首先判斷小數(shù)點(diǎn)鍵是否已經(jīng)被單擊過,以及當(dāng)前初始操作數(shù)字符串是否為空。實(shí)現(xiàn)代碼如下: 小數(shù) 點(diǎn)的定義如下: void CZZDlg::OnBd() { // . dian=true。 } ○ 3 程序判斷代碼 實(shí)現(xiàn) 如下: void CZZDlg::Numin(double put) { if(m_done==true||opt==true) //如果一次計(jì)算結(jié)束或運(yùn)算符已經(jīng)選擇 { if(dian==false)//如果小數(shù)點(diǎn)還沒有被按下 { m_Result=m_input=。 m_input=m_input*10+put。 UpdateData(false)。m_done=false。 UpdateData(false)。 for(i=0。i++) { put=put/10。 m_input=m_input+m。 UpdateData(false)。m_done=false。 m_Result=m_input。 opt=false。 } else if(dian==true)//如果小數(shù)點(diǎn)已經(jīng)被按下 /////////////// { int i。in。 } m=put。 m_Result=m_input。 opt=false。 } } n++。以數(shù)字鍵盤被單擊為例,實(shí)現(xiàn)代碼如下: void CZZDlg::OnB0() { // 0 Numin()。 } void CZZDlg::OnB2() { // 2 Numin()。 } void CZZDlg::OnB4() { // 4 Numin()。 } void CZZDlg::OnB6() { // 6 Numin()。 C++課程設(shè)計(jì) 14 } void CZZDlg::OnB8() {// 8 Numin()。 } void CZZDlg::operate() { num_1=m_Result。 dian=false。 } ○ 5 當(dāng)清除鍵 CE被單擊時(shí),則對(duì)所有的成員變量進(jìn)行初始化。實(shí)現(xiàn)代碼如下: void CZZDlg::OnBce() {// CE m_input=0。 UpdateData(false)。 dian=false。 n=0。以加號(hào)鍵被按下為例,實(shí)現(xiàn)代碼如下: 加號(hào)函數(shù): void CZZDlg::OnBadd() { // + operate()。 } void CZZDlg::operate() { num_1=m_Result。 dian=false。 } ○ 7 加號(hào)運(yùn)算的實(shí)現(xiàn)如下: if(yun==1)//判斷執(zhí)行何種運(yùn)算 { m_Result=num_1+num_2。 } ○ 8 計(jì)算機(jī)還有簡(jiǎn)單的函數(shù)功能,函數(shù)定義如下: void CZZDlg::Onlog() { operate()。 } void CZZDlg::Onpf() { operate()。 } void CZZDlg::Onsqrt() { operate()。 } void CZZDlg::Onsin() { operate()。 } void CZZDlg::Ontan() { operate()。 } void CZZDlg::Oncos() { operate()。 } ○ 9 函數(shù)運(yùn)算實(shí)現(xiàn)如下: else if(yun==6)//平方 { m_Result=num_1*num_1。 } else if(yun==7)//根號(hào) { if(num_1=0) C++課程設(shè)計(jì) 16 { m_Result=0。 } m_Result=sqrt(num_1)。 } else if(yun==8)//sin { m_Result=sin(num_1*PI/180)。 } else if(yun==9)//tan { m_Result=tan(num_1*PI/180)。 } else if(yun==10)//cos { m_Result=cos(num_1*PI/180)。 } ○10計(jì)算器的核心運(yùn)算函數(shù) —— Run。 Run函數(shù)實(shí)現(xiàn)代碼見 附錄 1。 程序結(jié)果的演示 測(cè)試的研究與選擇 測(cè)試過程中要判斷測(cè)試是否成功, 首先 要分析程序界面的變化 是否正常、輸入數(shù)據(jù)顯示是否正常,然后是 計(jì)算數(shù)據(jù)的結(jié)果是否正確 ,最后看 各 個(gè) 功能鍵是否能正常 使用。 C++課程設(shè)計(jì) 17 圖 51“ 34+78=”的運(yùn)行結(jié)果 其次, 輸入“ 2*4=” ,見 結(jié)果圖 52所示 圖 52“ 2*4=”的運(yùn)行結(jié)果 再 輸入“ 9/3=” ,見 結(jié)果圖 53所示 C++課程設(shè)計(jì) 18 圖 53“ 9/3=”的運(yùn)行結(jié)果 最后出入 25開根,見結(jié)果圖 54所 示: 圖 53“ 25開根 =”的運(yùn)行結(jié)果 測(cè)試結(jié)構(gòu)顯示,“計(jì)算器”運(yùn)行基本正常,沒有發(fā)現(xiàn)明顯的錯(cuò)誤。在課程設(shè)計(jì)的實(shí)踐中,學(xué)到很多有用的知識(shí),也積累了不少寶貴的經(jīng)驗(yàn)。 在課程設(shè)計(jì)中我了解到到對(duì)話框應(yīng)用程序的編程模式、對(duì)話框 添加背景圖片 。通過這次課程設(shè)計(jì),掌握了對(duì)話框的相關(guān)操作,也體會(huì)到書寫代碼一定要仔細(xì),有時(shí)候一小點(diǎn)拼寫錯(cuò)誤會(huì)浪費(fèi)很多調(diào)試程序的時(shí)間,再有一點(diǎn)就是要好好學(xué)習(xí)英語(yǔ),對(duì)編程有很大幫助。 這次 課程設(shè)計(jì)讓我 學(xué)到了很多,不僅鞏固了 MFC程序設(shè)計(jì)知識(shí),而且也培養(yǎng)了我的動(dòng)手能力,令我 的創(chuàng)造性思維得 到拓展。 當(dāng)然,本 課程設(shè)計(jì) 所采取的解決問題的方法并不是非常完善的,在今后的學(xué)習(xí)、工作中,我 將繼續(xù) 認(rèn)真學(xué)習(xí),以求能做出更完善的程序 。 if(yun==1)//加 { m_Result=num_1+num_2。 } else if(yun==2)//減 { m_Result=num_1num_2。 } else if(yun==3)//乘 { m_Result=num_1*num_2。 } else if(yun==4)//除 { m_Result=num_1/num_2。 } else if(yun==5)//log { if(num_1=0) { m_Result=0。 } m_Result=log10(num_1)。 } else if(yun==6)//平方 { m_Result=num_1*num_1。 } else if(yun==7)//根號(hào) { if(num_1=0) { m_Result=0。 } m_Result=sqrt(num_1)。 } else if(yun==8)//sin { m_Result=sin(num_1*PI/180)。 } else if(yun==9)//tan { m_Result=tan(num_1*PI/180)。 } else if(yun==10)//cos { m_Result=cos(num_1*PI/180)。 } opt=false。 dian=false。 C++課程設(shè)計(jì) 22 附錄 2: 計(jì)算器程序 // : header file if !defined(AFX_ZZDLG_H__70D9D5A9_C97C_488F_8F36_08F210B07A01__INCLUDED_) define AFX_ZZDLG_H__70D9D5A9_C97C_488F_8F36_08F210B07A01__INCLUDED_ if _MSC_VER 1000 pragma once endif // _MSC_VER 1000 ///////////////////////////////////////////////////////////////////// // CZZDlg dialog class CZZDlg : public CDialog { // Construction public: CZZDlg(CWnd* pParent = NULL)。 //保存輸入的數(shù)字 bool m_done,opt。 //成員函數(shù),處理輸入的數(shù)據(jù) double num_1,num_2。//輸入運(yùn)算符后要調(diào)用的函數(shù) int yun。
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1