

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> VC++課程設(shè)計(jì)報(bào)告</p><p><b> 簡(jiǎn)單科學(xué)計(jì)算器設(shè)計(jì)</b></p><p> 姓 名 : </p><p> 學(xué) 號(hào) : </p><p> 學(xué) 院 : 計(jì)算機(jī)學(xué)院 </p><
2、;p> 班 級(jí) : </p><p> 日 期 : 2012-03-27 </p><p><b> 目 錄</b></p><p><b> 一、設(shè)計(jì)任務(wù)1</b></p><p><b> 1、選題意義1</
3、b></p><p><b> 2、設(shè)計(jì)目標(biāo)1</b></p><p> 二、程序設(shè)計(jì)與實(shí)現(xiàn)1</p><p><b> 1、程序結(jié)構(gòu)1</b></p><p><b> 2、設(shè)計(jì)步驟3</b></p><p><b>
4、 3、詳細(xì)設(shè)計(jì)4</b></p><p> ?。?)、計(jì)算器界面4</p><p> (2)、主要代碼4</p><p> (3)、函數(shù)功能說(shuō)明16</p><p> 三、設(shè)計(jì)難點(diǎn)與解決方法17</p><p> 四、設(shè)計(jì)效果與不足之處18</p><p> 1
5、、程序效果圖18</p><p><b> 2、不足之處18</b></p><p><b> 五、學(xué)習(xí)體會(huì)18</b></p><p><b> 設(shè)計(jì)任務(wù)</b></p><p><b> 選題意義</b></p><p
6、> 此題選擇意義在于引導(dǎo)學(xué)生學(xué)會(huì)設(shè)計(jì)簡(jiǎn)單的科學(xué)計(jì)算器,進(jìn)一步掌握Visual C++應(yīng)用程序。統(tǒng)地學(xué)習(xí)面向?qū)ο缶幊趟枷?,了解MFC架構(gòu),逐步熟悉可視化編程環(huán)境Visual C++,并在此環(huán)境下設(shè)計(jì)并實(shí)現(xiàn)一個(gè)簡(jiǎn)單計(jì)算器系統(tǒng)。該計(jì)算器應(yīng)能實(shí)現(xiàn)如下功能: 1)、二進(jìn)制、八進(jìn)制、十進(jìn)制及十六進(jìn)制數(shù)的加、減、乘、除、乘方等簡(jiǎn)單計(jì)算 2)、科學(xué)計(jì)算函數(shù),包括正弦、余弦、正切、余切、開(kāi)方、對(duì)數(shù)、指數(shù)等函數(shù)運(yùn)算 3)、具備歷史計(jì)算的記憶功能。&
7、lt;/p><p><b> 設(shè)計(jì)目標(biāo)</b></p><p> 使計(jì)算器含有以下功能:</p><p> ?。?)、基本運(yùn)算功能:可以進(jìn)行加、減、乘、除等基本運(yùn)算。</p><p> (2)、數(shù)制轉(zhuǎn)換功能:可以一次完成二進(jìn)制轉(zhuǎn)十進(jìn)制、十進(jìn)制轉(zhuǎn)二進(jìn)制、八進(jìn)制轉(zhuǎn)二進(jìn)制等運(yùn)算。</p><p>
8、(3)、三角函數(shù)運(yùn)算功能:可以一次完成三角函數(shù)之間的計(jì)算,求正弦函數(shù)(sin)、余弦函數(shù)(cos)、正切函數(shù)(tan)、余切函數(shù)(cot)等函數(shù)的值。</p><p> (4)、對(duì)數(shù)、指數(shù)運(yùn)算功能:可以一次求的對(duì)數(shù)函數(shù)(log、ln)、指數(shù)函數(shù)(exp)等函數(shù)的運(yùn)算。</p><p> (5)、刪除功能:可以在輸入錯(cuò)誤時(shí)刪除已輸入的數(shù)值。</p><p> (
9、6)、歸零功能:可以在計(jì)算完成后清空編輯框中的已有數(shù)值。</p><p><b> 程序設(shè)計(jì)與實(shí)現(xiàn)</b></p><p><b> 程序結(jié)構(gòu)</b></p><p> 本計(jì)算器首先是通過(guò)在計(jì)算器的界面上按下相應(yīng)的按鈕,來(lái)進(jìn)行基本的加,減,乘,除等基本運(yùn)算,計(jì)算器還能夠進(jìn)行平方運(yùn)算,求平方根運(yùn)算,乘方運(yùn)算,三角函數(shù)運(yùn)
10、算(包括正弦函數(shù)(sin)、余弦函數(shù)(cos)、正切函數(shù)(tan)、余切函數(shù)(cot)),對(duì)數(shù)函數(shù)(ln、log),指數(shù)函數(shù)(exp),冪函數(shù)(x~)和進(jìn)制轉(zhuǎn)換(包括二進(jìn)制轉(zhuǎn)十進(jìn)制、十進(jìn)制轉(zhuǎn)二進(jìn)制和八進(jìn)制轉(zhuǎn)二進(jìn)制)等運(yùn)算。</p><p> 以下是本計(jì)算器的運(yùn)算流程圖:</p><p> 二進(jìn)制轉(zhuǎn)十進(jìn)制N-S流程圖:</p><p> 十進(jìn)制轉(zhuǎn)二進(jìn)制N-S流程
11、圖:</p><p><b> 設(shè)計(jì)步驟:</b></p><p> 創(chuàng)建一個(gè)基于對(duì)話框的應(yīng)用程序。</p><p> 利用資源編輯器編輯對(duì)話框資源,及設(shè)計(jì)計(jì)算器界面并修改對(duì)話框各按鈕的ID屬性和Caption屬性。</p><p> 利用ClassWizard為各按鈕添加消息映射(代碼在下面詳細(xì)介紹)。<
12、/p><p> 設(shè)置對(duì)話框文本背景顏色。</p><p><b> 編輯圖標(biāo)。</b></p><p><b> 詳細(xì)介紹:</b></p><p><b> ?。?)計(jì)算器界面:</b></p><p><b> (2)主要代碼:<
13、/b></p><p> void CGyDlg::On0() //輸入相應(yīng)的數(shù)據(jù),這為輸入數(shù)據(jù)0</p><p> { s2=s2+"0";</p><p> m_xs=m_xs+"0";</p><p> UpdateData(FALSE); </p><
14、p><b> }</b></p><p> void CGyDlg::On1() //輸入相應(yīng)的數(shù)據(jù),這為輸入數(shù)據(jù)1</p><p> { s2=s2+"1";</p><p> m_xs=m_xs+"1";</p><p> UpdateData(FALSE)
15、;</p><p><b> }</b></p><p> void CGyDlg::On2() //輸入相應(yīng)的數(shù)據(jù),這為輸入數(shù)據(jù)2</p><p> { s2=s2+"2";</p><p> m_xs=m_xs+"2";</p><p>
16、UpdateData(FALSE);</p><p><b> }</b></p><p> void CGyDlg::On3() //輸入相應(yīng)的數(shù)據(jù),這為輸入數(shù)據(jù)3</p><p> { s2=s2+"3";</p><p> m_xs=m_xs+"3";</
17、p><p> UpdateData(FALSE);</p><p><b> }</b></p><p> void CGyDlg::On4() //輸入相應(yīng)的數(shù)據(jù),這為輸入數(shù)據(jù)4</p><p> { s2=s2+"4";</p><p> m_xs=m_xs+&
18、quot;4";</p><p> UpdateData(FALSE);</p><p><b> }</b></p><p> void CGyDlg::On5() //輸入相應(yīng)的數(shù)據(jù),這為輸入數(shù)據(jù)5</p><p> { s2=s2+"5";</p><
19、p> m_xs=m_xs+"5";</p><p> UpdateData(FALSE);</p><p><b> }</b></p><p> void CGyDlg::On6() //輸入相應(yīng)的數(shù)據(jù),這為輸入數(shù)據(jù)6</p><p> { s2=s2+"6"
20、;;</p><p> m_xs=m_xs+"6";</p><p> UpdateData(FALSE);</p><p><b> }</b></p><p> void CGyDlg::On7() //輸入相應(yīng)的數(shù)據(jù),這為輸入數(shù)據(jù)7</p><p> {s2
21、=s2+"7";</p><p> m_xs=m_xs+"7";</p><p> UpdateData(FALSE);</p><p><b> }</b></p><p> void CGyDlg::On8() //輸入相應(yīng)的數(shù)據(jù),這為輸入數(shù)據(jù)8</p>
22、<p> { s2=s2+"8";</p><p> m_xs=m_xs+"8";</p><p> UpdateData(FALSE);</p><p><b> }</b></p><p> void CGyDlg::On9() //輸入相應(yīng)的數(shù)據(jù),這
23、為輸入數(shù)據(jù)9</p><p> { s2=s2+"9";</p><p> m_xs=m_xs+"9";</p><p> UpdateData(FALSE);</p><p><b> }</b></p><p> void CGyDlg::
24、Onadd() //加法運(yùn)算</p><p> { s2="";</p><p><b> s1=m_xs;</b></p><p> m_xs=m_xs+'+';</p><p><b> str='+';</b></p>
25、<p> UpdateData(false);</p><p><b> }</b></p><p> void CGyDlg::Onsub() //減法運(yùn)算</p><p> { s2="";</p><p><b> s1=m_xs;</b><
26、;/p><p> m_xs=m_xs+'-';</p><p><b> str='-';</b></p><p> UpdateData(false);</p><p><b> }</b></p><p> void CGyDlg:
27、:Onxsd() //小數(shù)點(diǎn)運(yùn)算</p><p> { s2=s2+".";</p><p> m_xs=m_xs+".";</p><p> UpdateData(false);</p><p><b> }</b></p><p> v
28、oid CGyDlg::Oncheng() //乘法運(yùn)算</p><p> { s2="";</p><p><b> s1=m_xs;</b></p><p> m_xs=m_xs+'*';</p><p><b> str='*';</b
29、></p><p> UpdateData(false);</p><p><b> }</b></p><p> void CGyDlg::Onchu() //除法運(yùn)算</p><p> { s2=""; </p><p><b> s1=m_x
30、s;</b></p><p> m_xs=m_xs+'/';</p><p><b> str='/';</b></p><p> UpdateData(false);</p><p><b> }</b></p><p>
31、; void CGyDlg::Ondel() //刪除功能</p><p><b> {</b></p><p> m_xs.Delete(m_xs.GetLength()-1,1);</p><p> UpdateData(false);</p><p><b> }</b></
32、p><p> void CGyDlg::Onpf() //平方運(yùn)算</p><p><b> { s2="";</b></p><p><b> s1=m_xs;</b></p><p> m_xs=m_xs+"^2";</p><
33、;p><b> str='p';</b></p><p> UpdateData(false);</p><p><b> }</b></p><p> void CGyDlg::Onkf() //開(kāi)2次方運(yùn)算 </p><p><b> { s2=&
34、quot;";</b></p><p><b> s1=m_xs;</b></p><p> m_xs=m_xs+"^1/2";</p><p><b> str='k';</b></p><p> UpdateData(false)
35、;</p><p><b> }</b></p><p> void CGyDlg::Onsin() //sin函數(shù)運(yùn)算</p><p><b> { s2="";</b></p><p><b> s1=m_xs;</b></p>
36、<p> m_xs="sin"+m_xs;</p><p><b> str='s';</b></p><p> UpdateData(false);</p><p><b> }</b></p><p> void CGyDlg::Onco
37、s() //cos函數(shù)運(yùn)算</p><p><b> { s2="";</b></p><p><b> s1=m_xs;</b></p><p> m_xs="cos"+m_xs;</p><p><b> str='c'
38、;;</b></p><p> UpdateData(false);</p><p><b> }</b></p><p> void CGyDlg::Ontan() //tan函數(shù)運(yùn)算</p><p><b> { s2="";</b></p>
39、;<p><b> s1=m_xs;</b></p><p> m_xs="tan"+m_xs;</p><p><b> str='t';</b></p><p> UpdateData(false);</p><p><b>
40、 }</b></p><p> void CGyDlg::Onln() //ln函數(shù)運(yùn)算</p><p><b> { s2="";</b></p><p><b> s1=m_xs;</b></p><p> m_xs="ln"+m
41、_xs;</p><p><b> str='l'; </b></p><p> UpdateData(false);</p><p><b> }</b></p><p> void CGyDlg::Onlog() //log函數(shù)運(yùn)算</p><p>
42、;<b> { s2="";</b></p><p><b> s1=m_xs;</b></p><p> m_xs="log"+m_xs;</p><p><b> str='g'; </b></p><p>
43、 UpdateData(false);</p><p><b> }</b></p><p> void CGyDlg::Onex() //以e為底的指數(shù)運(yùn)算</p><p><b> { s2="";</b></p><p><b> s1=m_xs;
44、</b></p><p> m_xs="e^"+m_xs;</p><p><b> str='e'; </b></p><p> UpdateData(false);</p><p><b> }</b></p><p&g
45、t; void CGyDlg::On3cfg() //開(kāi)3次方運(yùn)算</p><p><b> { </b></p><p><b> s2="";</b></p><p><b> s1=m_xs;</b></p><p> m_xs=m_xs+
46、"^1/3";</p><p><b> str='f'; </b></p><p> UpdateData(false);</p><p><b> }</b></p><p> void CGyDlg::Onxy() // x的y次方運(yùn)算</p&
47、gt;<p><b> { s2="";</b></p><p><b> s1=m_xs;</b></p><p> m_xs=m_xs+"^";</p><p><b> str='^';</b></p>
48、<p> UpdateData(false);</p><p><b> }</b></p><p> void CGyDlg::Onqk() // 歸零按鈕</p><p> { m_xs="";</p><p> UpdateData(FALSE);</p&g
49、t;<p><b> }</b></p><p> void CGyDlg::Onsze() //十進(jìn)制轉(zhuǎn)二進(jìn)制</p><p><b> { s2="";</b></p><p> int n,i,t;</p><p> double Y,p=0.0
50、;</p><p> Y=strtod( m_xs,NULL); //把字符串轉(zhuǎn)化成浮點(diǎn)型</p><p> t=(int)(Y);</p><p><b> if(t!=1)</b></p><p> for(i=1;t>1;i++)</p><p><b> {&l
51、t;/b></p><p><b> n=t%2;</b></p><p><b> t=t/2;</b></p><p> p+=n*pow(10,(i-1));</p><p><b> } </b></p><p> p+=1*po
52、w(10,(i-1));</p><p> m_xs.Format("%f",p);</p><p> m_xs=scl(m_xs);</p><p> UpdateData(false);</p><p><b> }</b></p><p> void CGyDl
53、g::Onezs() //二進(jìn)制轉(zhuǎn)十進(jìn)制</p><p><b> { s2="";</b></p><p><b> int len;</b></p><p> double sum=0.0,num;</p><p> len=strlen(m_xs);</
54、p><p> for (int i=0;i<len;i++)</p><p><b> { </b></p><p> num=(m_xs[i]-48);</p><p> num=num*pow(2,len-i-1); </p><p><b> sum+=num;<
55、;/b></p><p><b> }</b></p><p> m_xs.Format("%f",sum);</p><p> m_xs=scl(m_xs);</p><p> UpdateData(false);</p><p><b> }<
56、;/b></p><p> void CGyDlg::Onbze() //八進(jìn)制轉(zhuǎn)二進(jìn)制</p><p><b> { s2="";</b></p><p> int i,len;</p><p><b> char s;</b></p><
57、p> len=strlen(m_xs);</p><p> CString m_xs1;</p><p> for(i=0;i<len;i++)</p><p> { s=m_xs[i];</p><p><b> switch(s)</b></p><p><b&g
58、t; { </b></p><p><b> case'1':</b></p><p> m_xs1=m_xs1+"001";</p><p><b> break;</b></p><p><b> case '2'
59、;:</b></p><p> m_xs1=m_xs1+"010";</p><p><b> break;</b></p><p><b> case '3':</b></p><p> m_xs1=m_xs1+"011"
60、;</p><p><b> break;</b></p><p><b> case '4':</b></p><p> m_xs1=m_xs1+"100";</p><p><b> break;</b></p>&
61、lt;p><b> case'5':</b></p><p> m_xs1=m_xs1+"101";</p><p><b> break;</b></p><p><b> case '6':</b></p><p
62、> m_xs1=m_xs1+"110";</p><p><b> break;</b></p><p><b> case'7':</b></p><p> m_xs1=m_xs1+"111";</p><p><b>
63、; break;</b></p><p><b> case'.':</b></p><p> m_xs1=m_xs1+".";</p><p><b> break;</b></p><p><b> } </b>&l
64、t;/p><p><b> }</b></p><p> m_xs=m_xs1;</p><p> UpdateData(false);</p><p><b> } </b></p><p> double add(double X, double Y)
65、{ return X+Y;} //加函數(shù)</p><p> double subtract(double X, double Y) { return X-Y;} //減函數(shù)</p><p> double chu(double X, double Y) { return X/Y;} //除函數(shù)</p><p> double cheng(d
66、ouble X, double Y) { return X*Y; } //乘函數(shù)</p><p> double jzf(double fu) { return fu / 180.0 * 3.14159265; } // 角度轉(zhuǎn)弧度</p><p> CString scl(CString m) //刪除小數(shù)點(diǎn)后多余的零</p><p> {
67、 int len,i,j=0;</p><p> len=strlen(m);</p><p> if(m[len-1]=='0')</p><p> { i=len-1;</p><p> while(m[i]=='0')</p><p><b> { j
68、++;</b></p><p><b> i--;</b></p><p><b> }</b></p><p> m.Delete(len-j,j); // 刪除小數(shù)點(diǎn)后無(wú)用的零</p><p><b> } </b></p><p&
69、gt;<b> return m;</b></p><p><b> }</b></p><p> double chengfang(double X, int Y) //乘方</p><p> { double m=1.0;</p><p><b> if(Y==1)<
70、;/b></p><p><b> return X;</b></p><p><b> else</b></p><p> for(int i=1;i<=Y;i++)</p><p><b> m=m*X;</b></p><p>
71、<b> return m;</b></p><p><b> }</b></p><p> void CGyDlg::Ondy() //等于號(hào)的功能函數(shù)</p><p><b> { </b></p><p> double X,Y;</p&g
72、t;<p> X=strtod(s1,NULL); //把字符串轉(zhuǎn)化成浮點(diǎn)型</p><p> Y=strtod(s2,NULL); //把字符串轉(zhuǎn)化成浮點(diǎn)型</p><p> switch(str)</p><p><b> {</b></p><p><b> case
73、 '+':</b></p><p> m_xs.Format("%f",add(X,Y));</p><p> m_xs=scl(m_xs); //調(diào)用刪除零函數(shù)</p><p> UpdateData(false);</p><p><b> break; </b
74、></p><p> case '-': </p><p> m_xs.Format("%f",subtract(X,Y)); </p><p> m_xs=scl(m_xs); //調(diào)用刪除零函數(shù)</p><p> UpdateData(false); </p><
75、;p><b> break;</b></p><p><b> case '*':</b></p><p> m_xs.Format("%f",cheng( X,Y)); </p><p> m_xs=scl(m_xs); //調(diào)用刪除零函數(shù)</p><
76、;p> UpdateData(false);</p><p><b> break;</b></p><p><b> case '/':</b></p><p> m_xs.Format("%f",chu(X,Y));</p><p> m_xs
77、=scl(m_xs); //調(diào)用刪除零函數(shù)</p><p> UpdateData(false);</p><p><b> break;</b></p><p><b> case 'p':</b></p><p> m_xs.Format("%f",
78、cheng(Y,Y));</p><p> m_xs=scl(m_xs); //調(diào)用刪除零函數(shù)</p><p> UpdateData(false);</p><p><b> break;</b></p><p><b> case 'k':</b></p>
79、<p> m_xs.Format("%f",sqrt(Y));</p><p> m_xs=scl(m_xs); //調(diào)用刪除零函數(shù)</p><p> UpdateData(false);</p><p><b> break;</b></p><p><b> ca
80、se 's':</b></p><p> m_xs.Format("%f",sin(jzf(Y)));</p><p> m_xs=scl(m_xs); //調(diào)用刪除零函數(shù)</p><p> UpdateData(false);</p><p><b> break;<
81、/b></p><p><b> case 'c':</b></p><p> m_xs.Format("%f",cos(jzf(Y))); </p><p> m_xs=scl(m_xs); //調(diào)用刪除零函數(shù)</p><p> UpdateData(false);&
82、lt;/p><p><b> break;</b></p><p><b> case 't':</b></p><p> m_xs.Format("%f",tan(jzf(Y))); </p><p> m_xs=scl(m_xs); //調(diào)用刪除零函數(shù)&
83、lt;/p><p> UpdateData(false);</p><p><b> break;</b></p><p><b> case 'l':</b></p><p> m_xs.Format("%f",log(Y)); </p>&l
84、t;p> m_xs=scl(m_xs); //調(diào)用刪除零函數(shù)</p><p> UpdateData(false);</p><p><b> break;</b></p><p><b> case 'g':</b></p><p> m_xs.Format(&q
85、uot;%f",log10(Y)); </p><p> m_xs=scl(m_xs); //調(diào)用刪除零函數(shù)</p><p> UpdateData(false);</p><p><b> break;</b></p><p><b> case 'e':</b>
86、;</p><p> m_xs.Format("%f",exp(Y)); </p><p> m_xs=scl(m_xs); //調(diào)用刪除零函數(shù)</p><p> UpdateData(false);</p><p><b> break;</b></p><p>&
87、lt;b> case '^':</b></p><p> m_xs.Format("%f", chengfang(X,(int)Y));</p><p> m_xs=scl(m_xs); //調(diào)用刪除零函數(shù)</p><p> UpdateData(false);</p><p>
88、<b> break;</b></p><p> case 'f': </p><p> m_xs.Format("%f", pow(Y,M3));</p><p> m_xs=scl(m_xs); //調(diào)用刪除零函數(shù)</p><p> UpdateData(false);
89、</p><p><b> break;</b></p><p> default : </p><p> UpdateData(false);</p><p><b> }</b></p><p><b> m_xs="";</
90、b></p><p><b> s2="";</b></p><p><b> }</b></p><p> HBRUSH CGyDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) //設(shè)置編輯框背景顏色</p><
91、p><b> {</b></p><p> HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor); </p><p> pDC->SetBkColor(RGB(190,255,0));</p><p> return hbr;</p><p>
92、;<b> }</b></p><p><b> ?。?)函數(shù)功能說(shuō)明</b></p><p> 整個(gè)計(jì)算器除了基本的加、減、乘、除運(yùn)算外,另外還有8個(gè)功能,實(shí)現(xiàn)八大運(yùn)算:三角函數(shù)運(yùn)算功能、對(duì)數(shù)函數(shù)運(yùn)算功能、指數(shù)函數(shù)運(yùn)算功能、乘方運(yùn)算功能、平方運(yùn)算功能、根式運(yùn)算功能、進(jìn)制轉(zhuǎn)換功能、歸零功能。各個(gè)運(yùn)算功能的詳細(xì)設(shè)計(jì)說(shuō)明分別如下:</p&g
93、t;<p><b> a、基本運(yùn)算功能</b></p><p> 主要實(shí)現(xiàn)數(shù)據(jù)的加、減、乘、除運(yùn)算,提供簡(jiǎn)單的科學(xué)計(jì)算!</p><p> b、三角函數(shù)運(yùn)算功能</p><p> 用來(lái)執(zhí)行三角函數(shù)的運(yùn)算,包括正弦函數(shù)(sin)、余弦函數(shù)(cos)、正切函數(shù)(tan)和余切函數(shù)(cot)。</p><p&
94、gt; c、對(duì)數(shù)函數(shù)運(yùn)算功能</p><p> 用來(lái)執(zhí)行對(duì)數(shù)函數(shù)的運(yùn)算,包括以e為底ln函數(shù)和以10為底的lg函數(shù)。</p><p> d、指數(shù)函數(shù)運(yùn)算功能</p><p> 用來(lái)執(zhí)行指數(shù)函數(shù)的運(yùn)算。</p><p><b> e、乘方運(yùn)算功能</b></p><p> 用來(lái)執(zhí)行乘方的
95、運(yùn)算,進(jìn)行數(shù)值的成倍計(jì)算。</p><p><b> f、平方運(yùn)算功能</b></p><p> 用來(lái)執(zhí)行平方運(yùn)算,說(shuō)到底它也屬于乘方運(yùn)算的范疇。</p><p><b> g、根式運(yùn)算功能</b></p><p> 用來(lái)執(zhí)行根式的運(yùn)算。 </p><p> h、進(jìn)
96、制轉(zhuǎn)換運(yùn)算功能</p><p> 主要實(shí)現(xiàn)數(shù)值間的轉(zhuǎn)換,包括二進(jìn)制轉(zhuǎn)十進(jìn)制、十進(jìn)制轉(zhuǎn)二進(jìn)制和八進(jìn)制轉(zhuǎn)二進(jìn)制的運(yùn)算。</p><p><b> i、歸零、刪除功能</b></p><p> 主要實(shí)現(xiàn)數(shù)據(jù)的清零,當(dāng)用戶輸入數(shù)據(jù)出錯(cuò)時(shí),使用此功能可以清除已輸入的內(nèi)容并重新輸入新的運(yùn)算內(nèi)容。</p><p><b&g
97、t; 設(shè)計(jì)難點(diǎn)與解決方法</b></p><p> 設(shè)計(jì)難點(diǎn)1:遇到一些復(fù)雜的函數(shù)計(jì)算時(shí),設(shè)計(jì)的代碼不能很好的反映出該有的功能。</p><p> 解決策略:通過(guò)看書(shū)、上網(wǎng)查資料和與同學(xué)討論,自己再反復(fù)修改代碼,運(yùn)行程序,直到實(shí)際效果滿意為止。</p><p> 設(shè)計(jì)難點(diǎn)2:在編譯程序時(shí),出現(xiàn)類型不匹配的錯(cuò)誤,查找是Cstring和double類
98、型之間沒(méi)有轉(zhuǎn)換。</p><p> 解決策略:查找到Format()和atof()函數(shù)可以進(jìn)行他們之間的轉(zhuǎn)換</p><p><b> 設(shè)計(jì)效果與不足之處</b></p><p><b> 程序效果圖如下:</b></p><p><b> 不足之處:</b></
99、p><p> 計(jì)算器的計(jì)算功能還不是很多,設(shè)計(jì)效果也不是很理想,輸入數(shù)據(jù)和顯示結(jié)果不能同步顯示,只能分別顯示。</p><p><b> 五、 學(xué)習(xí)體會(huì)</b></p><p> 經(jīng)過(guò)對(duì)VC++課程設(shè)計(jì)的編寫(xiě)設(shè)計(jì),加深了我對(duì)《VC++程序設(shè)計(jì)》課程所學(xué)知識(shí)的進(jìn)一步理解,掌握了各種函數(shù)的應(yīng)用和調(diào)用。</p><p>
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- vc++課程設(shè)計(jì)---簡(jiǎn)單計(jì)算器的設(shè)計(jì)
- vc++課程設(shè)計(jì)---gpa計(jì)算器的設(shè)計(jì)
- 《軟件設(shè)計(jì)基礎(chǔ)(vb)》簡(jiǎn)單科學(xué)計(jì)算器課程設(shè)計(jì)報(bào)告書(shū)
- 簡(jiǎn)單計(jì)算器課程設(shè)計(jì)報(bào)告
- 簡(jiǎn)單計(jì)算器課程設(shè)計(jì)報(bào)告
- 計(jì)算器java課程設(shè)計(jì)--簡(jiǎn)單計(jì)算器
- 簡(jiǎn)單計(jì)算器課程設(shè)計(jì)
- vc++課程設(shè)計(jì)報(bào)告
- c++課程設(shè)計(jì)---用vc++制作多功能計(jì)算器
- c++簡(jiǎn)單計(jì)算器課程設(shè)計(jì)報(bào)告
- java計(jì)算器課程設(shè)計(jì)報(bào)告---模擬科學(xué)計(jì)算器
- c++課程設(shè)計(jì)報(bào)告--簡(jiǎn)單計(jì)算器
- c++課程設(shè)計(jì)---用vc++制作多功能計(jì)算器
- 簡(jiǎn)單的計(jì)算器課程設(shè)計(jì)
- 課程設(shè)計(jì)---簡(jiǎn)單的計(jì)算器
- vb課程設(shè)計(jì)--簡(jiǎn)單計(jì)算器
- 課程設(shè)計(jì)--簡(jiǎn)單的計(jì)算器設(shè)計(jì)
- 課程設(shè)計(jì)--簡(jiǎn)單計(jì)算器的設(shè)計(jì)
- 課程設(shè)計(jì)--簡(jiǎn)單計(jì)算器的設(shè)計(jì)
- 簡(jiǎn)單的計(jì)算器課程設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論