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

正文內(nèi)容

c課程設(shè)計(jì)【用c編寫計(jì)算器程序】【樣本】-展示頁

2024-08-22 14:45本頁面
  

【正文】 0 z++。) //(i)是減號 { a[z]=itemp。 //把10賦給rate,確保讀取下個(gè)數(shù)字時(shí),先計(jì)算整數(shù)部分 } else if((i)==39。 //把加號放入字符數(shù)組b中 z++。 //讓z自加一次 b[z]=39。itemp=0。+39。) //(i)是小數(shù)點(diǎn) rate=。 //每次讓rate小10倍 } } else if((i)==39。)。//獲得整數(shù) else //小數(shù)部分 { itemp=itemp+rate*((i)39。039。i()。 //對數(shù)組b[10]初始化 i=0。i++) b[i]=39。 //對數(shù)組a[20]初始化 for(i=0。i20。 double rate=,itemp=。(z的值表示運(yùn)算符加數(shù)字一個(gè)有多少個(gè),把這個(gè)值賦給s,可以在以后的計(jì)算中,控制循環(huán)的條件,避免造成不必要的誤差。程序調(diào)用函數(shù)void GetStr(CString str),這個(gè)函數(shù)的前半部分和函數(shù)void GetaStr(CString str)一樣,都是獲取數(shù)字的算法,但是因?yàn)楸磉_(dá)式中可能有多個(gè)數(shù)字和運(yùn)算符,所以我們需要定義2個(gè)數(shù)組,分別用來存放數(shù)字和運(yùn)算符,當(dāng)讀取字符遇到運(yùn)算符時(shí),把變量itemp的值保存在數(shù)組a中,并把0賦給itemp,把10賦給rate,把運(yùn)算符保存在數(shù)組b中。 //讓rate=,開始計(jì)算小數(shù)部分 } return (itemp)。.39。//獲得小數(shù) rate=rate/10。039。)。i++) { if(isdigit((i))) //(i)的內(nèi)容是整數(shù) { if(rate==) //整數(shù)部分 itemp=itemp*rate+((i)39。 for(。以下是這個(gè)函數(shù)的代碼[2]:double CMyDlg::GetaStr(CString str){ int i=0。rate=rate/10。039。)。程序用了一個(gè)函數(shù)double GetaStr(CString str)來實(shí)現(xiàn)這個(gè)功能,該函數(shù)以編輯框變量m_strResult為實(shí)參,再得到m_strResult的值后,調(diào)用GetAt函數(shù),一個(gè)字符一個(gè)字符的讀取,如果碰到整數(shù),執(zhí)行“itemp=itemp*rate+((i)39。這個(gè)情況用來實(shí)現(xiàn)一些簡單函數(shù)的運(yùn)算。 輸入一個(gè)十進(jìn)制數(shù)100 100轉(zhuǎn)化為二進(jìn)制后的結(jié)果 100轉(zhuǎn)化為十六進(jìn)制后的結(jié)果(4)另外,計(jì)算器還可以實(shí)現(xiàn)一些簡單的函數(shù)運(yùn)算,實(shí)現(xiàn)的操作和十六進(jìn)制/二進(jìn)制轉(zhuǎn)化類似,是先輸入一個(gè)數(shù)字,在單擊想要進(jìn)行的函數(shù)的按鈕,單擊后就會(huì)在編輯框中顯示運(yùn)算的結(jié)果。(1)在運(yùn)行程序后,系統(tǒng)會(huì)彈出一個(gè)基于對話框的計(jì)算器界面,如下圖所示: 計(jì)算器界面 (2)在計(jì)算器程序中,主要通過一個(gè)編輯框來獲取表達(dá)式和顯示計(jì)算結(jié)果,表達(dá)式可以通過鍵盤和單擊按鈕2種方式輸入,輸入后的結(jié)果如下圖所示: 輸入表達(dá)式后的界面 (3)在輸入完表達(dá)式后,單擊“=”后,開始對表達(dá)式進(jìn)行計(jì)算,計(jì)算完成后,在編輯框中顯示計(jì)算的結(jié)果。其優(yōu)點(diǎn)是給用戶編程帶來書寫上的方便。通常,C++程序環(huán)境 約定:當(dāng)源程序文件的擴(kuò)展名為c.時(shí),則為C程序;而當(dāng)源程序文件的擴(kuò)展名為cpp.時(shí),則為C++程序。這對于設(shè)計(jì)、編制和調(diào)試一些大型的軟件尤為重要。這對于繼承和開發(fā)當(dāng)前已在廣泛的軟件是非常重要的,可以節(jié)省大量的人力和物力。 C++介紹C++語言的主要特點(diǎn)表現(xiàn)在兩個(gè)方面,一是全面兼容C語言,二是支持面向?qū)ο蟮某绦蛟O(shè)計(jì)方法[1]。程序通過調(diào)試運(yùn)行,初步實(shí)現(xiàn)了設(shè)計(jì)目標(biāo)。 C++程序設(shè)計(jì)課程設(shè)計(jì)報(bào)告題目:用C++編寫計(jì)算器程序 學(xué)生姓名: 學(xué) 號: 院 (系): 專 業(yè): 2011 年 9 月 9 日 用C++編寫計(jì)算器程序搞 要 本課程設(shè)計(jì)是在基于對話框的應(yīng)用程序中模擬一個(gè)計(jì)算器,本計(jì)算器可以進(jìn)行十進(jìn)制下的四則運(yùn)算(加、減、乘、除)和四則混合運(yùn)算,可以把十進(jìn)制轉(zhuǎn)化為二進(jìn)制或十六進(jìn)制,可以進(jìn)行一些常用的函數(shù)運(yùn)算(比如sin、cos、tan、cot、sqrt、ln等),還可以支持帶“(”,“)”符號的表達(dá)式的計(jì)算。系統(tǒng)開發(fā)平臺為Windows XP,程序設(shè)計(jì)設(shè)計(jì)語言采用Visual C++,程序運(yùn)行平臺為Windows 98/2000/XP。關(guān)鍵詞 程序設(shè)計(jì);計(jì)算器;C++;1 引言 在現(xiàn)代社會(huì)中,計(jì)算器已經(jīng)進(jìn)入了每一個(gè)家庭,人們在生活和學(xué)習(xí)中經(jīng)常需要使用到計(jì)算器,它的出現(xiàn)大大減少了人們在計(jì)算方面的工作量,可以說它在人們生活和學(xué)習(xí)中是不可缺少的。(1) C++是一個(gè)更好的C,它保持了C語言的優(yōu)點(diǎn),大多數(shù)的C程序代碼略作修改或不作修改就可在C++的集成環(huán)境下調(diào)試和運(yùn)行。(2) C++是一種面向?qū)ο蟮某绦蛟O(shè)計(jì)語言它使得程序的各個(gè)模塊的獨(dú)立性更強(qiáng),程序的可讀性和可移植性更強(qiáng),程序代碼的結(jié)構(gòu)更加合理,程序的擴(kuò)充性更強(qiáng)。 (3) C++集成環(huán)境不僅支持C++程序的編譯和調(diào)試,而且也支持C程序的編譯和調(diào)試。(4) C++語句非常簡練,對語法限制比較寬松,因此C++語法非常靈活。其缺點(diǎn)是由于編譯時(shí)對語法限制比較寬松,許多邏輯上的錯(cuò)誤不容易發(fā)現(xiàn),給用戶編程增加了難度。 計(jì)算后的結(jié)果(4)計(jì)算器可以實(shí)現(xiàn)十進(jìn)制轉(zhuǎn)化為十六進(jìn)制或二進(jìn)制,其實(shí)現(xiàn)的操作為先輸入一個(gè)十進(jìn)制整數(shù),再單擊按鈕“轉(zhuǎn)化為二進(jìn)制”或“轉(zhuǎn)化為十六進(jìn)制。 2 算法的實(shí)現(xiàn)(1)如果字符串中只有數(shù)字。在進(jìn)行簡單函數(shù)的運(yùn)算時(shí),都是先輸入一個(gè)數(shù)字,再單擊要進(jìn)行運(yùn)算的按鈕,然后編輯框顯示運(yùn)算的結(jié)果。039?!保渲凶兞縤temp初始值為0,變量rate初始值為10,如果碰到了小數(shù)點(diǎn),改變r(jià)ate的值,再向后繼續(xù)讀取,再碰到整數(shù)時(shí)執(zhí)行“itemp=itemp+rate*((i)39。)?!保瘮?shù)的最后確定返回值為itemp。 double rate=,itemp=。i()。039。//獲得整數(shù) else //小數(shù)部分 { itemp=itemp+rate*((i)39。)。 //每次讓rate小10倍 } } else if((i)==39。) //(i)是小數(shù)點(diǎn) rate=。}(2)如果字符串中有運(yùn)算符和數(shù)字,但是沒有括號。當(dāng)不在碰到運(yùn)算符號時(shí),把最后一個(gè)整數(shù)itemp的值數(shù)組a中,把z的值賦給s。)這個(gè)函數(shù)的代碼如下:void CMyDlg::GetStr(CString str) { int i=0,z=0。 for(i=0。i++) a[i]=。i10。 39。 //把0賦給i for(。i++) { if(isdigit((i))) //(i)的內(nèi)容是整數(shù) { if(rate==) //整數(shù)部分 itemp=itemp*rate+((i)39。)。039。//獲得小數(shù) rate=rate/10。.39。 //讓rate=,開始計(jì)算小數(shù)部分 else if((i)==39。) //(i)是加號 { a[z]=itemp。 //把itemp的值放入雙精度數(shù)組a中,并把itemp的值改為0 z++。+39。 //讓z自加一次 rate=。39。itemp=0。 //讓z自加一次 b[z]=39。 //把減號放入字符數(shù)組b中 z++。 //把10賦給rate,確保讀取下個(gè)數(shù)字時(shí),先計(jì)算整數(shù)部分 } else if((i)==39。) //(i)是乘號 { a[z]=itemp。 //把itemp的值放入雙精度數(shù)組a中,并把itemp的值改為0 z++。*39。 //讓z自加一次 rate=。/39。itemp=0。 //讓z自加一次 b[z]=39。 //把除號放入字符數(shù)組b中 z++。 //把10賦給rate,確保讀取下個(gè)數(shù)字時(shí),先計(jì)算整數(shù)部分 } } a[z]=itemp。 //把z的值賦給變量s,用來控制計(jì)算結(jié)果的循環(huán)中的條件}(3) 如果字符串中有括號。具體實(shí)現(xiàn)的算法:定義3個(gè)字符串變量strstrstr3,這三個(gè)變量都初始化為空變量,現(xiàn)在開始一個(gè)循環(huán),當(dāng)沒有遇到字符“(”時(shí),把每次得到的字符都加在字符串str1上,當(dāng)遇到字符“(”時(shí),把“(”后的字符都加在字符串str2上,直到遇到字符“)”。該函數(shù)代碼如下:void CMyDlg::Bracket(CString str0){ CString str1=,str2=,str3=。 for(。i++) { if((i)==39。) //如果碰到了左括號 { i++。i()。)39。 //如果碰到右括號,跳出循環(huán) str2+=(i)。 //i自加一次,用來跳過右括號 for(。i++) { str3+=(i)。 //把括號前邊的表達(dá)式賦給str3 }GetStr(str2)。 //計(jì)算出表達(dá)式str2的值 for(i=0。i++) if((i)==39。) //如果m_strResult中有括號 (%1f,a[0])。 //把str1,str2,str3的值加起來賦給m_strResult} 計(jì)算出結(jié)果的算法在把表達(dá)式中的數(shù)字和運(yùn)算符分別保存在數(shù)組后,接下來我們就要進(jìn)行表達(dá)式的計(jì)算了,表達(dá)式的計(jì)算首先要考慮優(yōu)先級的問題,這里先把所有的除法轉(zhuǎn)化為乘法,再把除法后的數(shù)字取它的倒數(shù),接下來就是進(jìn)行乘法計(jì)算,每次乘法計(jì)算后都把計(jì)算的結(jié)果保存在計(jì)算的2個(gè)數(shù)中的前面的那個(gè)數(shù)上,并把乘號和后面的數(shù)字刪除。函數(shù)代碼如下:void CMyDlg::GetResult(){ int i=0,x=0,y=1,t,z=1。i=s。/39。 //把a(bǔ)[i+1]的值改為1/a[i+1] b[i]=39。 //把b[i]的值改為乘號 } }//這個(gè)循環(huán)可以對所有乘法進(jìn)行計(jì)算 f
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1