C語言中如何實現計算器功能,c語言如何建立一個按鈕?做計算器用

時間 2022-02-01 19:22:05

1樓:匿名使用者

如果你的表示式不超過一級括號,可以不使用棧.

如你的例題,但象這樣不用棧很煩

3*(4*(3+(2+6)/3))

如只有一級,沒人寫,就加我.

2樓:花花韋德少

#include

using namespace std;

bool cal(double lv, char op, double rv, double& val)

return true;

}bool cal(double opd,char ops, int n, double& val)

char* p = ops+n-2;//指向最後一個運算子

while(p>=ops&&*p!='+'&&*p!='-') --p;//找+-

if(p> opd[i];

if(!cin)

else

}//3*(5-6)=

cin >> c;

if(strchr("+-*/=)",c)==null) return false;

ops[i++] = c;

}while(c!='='&&c!=')');

return cal(opd,ops,i,val);

}int main()

}c++ 寫的

3樓:毓拔春問風

#include

intmain()

printf("%.6lf\n",

result);

}return0;}

c語言如何建立一個按鈕?做計算器用

4樓:傻瓜呼叫愛笨蛋

這是一個簡單計算器程式:

1)建立一個對話方塊的應用

2)向對話方塊中新增一個編輯框控制元件和十六個按鈕3)在標頭檔案宣告:

double m_num; //記錄編輯框中的資料bool m_time; //判斷是否為第一次按下數字鍵char m_operator; //儲存運算子4)處理數字「1」按鈕的單擊事件將按鈕代表的數字寫入編輯框中,**:

void ccalculatordlg::onbutton1()m_result = m_result * 10 + 1;

m_time = false;

updatedata(false);

} 5)按照步驟4設定其他的數字按鈕的單擊事件6)新增count函式,用於計算資料,**如下:

void ccalculatordlg::count()m_num /= m_result;

break;

default:

m_num = m_result;

break;

} m_result = m_num;

m_time = true;

updatedata(false);

} 7)處理「+」,為m_operator變數賦值。**:

void ccalculatordlg::onbutton13()m_operator = '+';

} 8)按照步驟7設定其他符號按鈕的單擊事件9)處理「c」按鈕的單擊事件,用於清空編輯框中的資料,**void ccalculatordlg::onbutton11()以上執行結果正常,不過結果貼不上來啊,就靠自己了啊

5樓:

這個比較困難,還是用vc++做吧。

用c語言怎樣實現計算器加減乘除功能?

6樓:匿名使用者

我學c++時寫的

#include

#include "string"

int    count(int a,int b,char c)void main()

; char sign[10];

int i,j=0,k=0,m;

int strlong=strlen(str);//#include "string"

cout<='0'&&str[i]<='9')number[j]=number[j]*10+str[i]-48;

else }

j++;

//cout<

2.堆疊

#include "string"

#include "iostream"

#include

#include

#include

using namespace std;

//自定義型別 用於儲存 兩種資料型別

class  newtype

data;

}; //將字串轉換為 數字陣列和字元陣列  (通用提取字串中數字)

這裡要使用引用

flag=false;

} else

}//for

return true;

} //計算沒有括號的表示式

計算四者表示式  無括號型別  1+2*3+4int ii=0;

//先計算乘除

while(iiall,float &value){

int pos=0;

vectornumbers;

vectorchars;

float va=0;

for(int i=0;inumbers;

vectorchars;

vectorall;

couvert(str, numbers, chars,all);

for(int i=0;i

這是我翻家底找到的 .

7樓:匿名使用者

#include

void main()

scanf("%d\n",&d);}

8樓:沐星辰曦

#include

void main()

9樓:sky思念很淺

#include

void main()}

10樓:

我有個vc++的 任意進位制轉換----棧的連結儲存/* 棧的連結儲存----任意進位制轉換*/#include

#include

typedef int elemtype;

struct snode ;

void initstack(snode*& hs)// 壓棧 插入元素

void push(snode*& hs, const elemtype& item)

//從棧中刪除一個元素並返回該元素

elemtype pop(snode*& hs)//讀取棧頂元素

elemtype peek(snode* hs)bool emptystack(snode* hs)void clearstack(snode*& hs)hs = null;

}void transform(long number, int r)

while(!emptystack(a))

11樓:匿名使用者

#include

int main()

if(b!=0) //如果除數不為0return 0;}

12樓:匿名使用者

#include

#include

int main()

printf("%f%c%f=%f",a,b,c,d);

return 0;}

c語言計算器怎樣做三角函式功能?

13樓:匿名使用者

很簡單的,比如你已經有一個表示式char exp;

那麼 char * s = strstr(exp, "sin");

if(s)

就可以了

strstr是一個字串函式,用於查詢字串內與關鍵字匹配的那個位置比如char exp = "cos(a) + sin(b) - tan(c)";

那麼char * s = strstr(exp, "sin");

printf(s)的結果是:

sin(b) - tan(c)

14樓:琉璃易碎

可以呼叫庫函式

有關庫函式的**如下:

#include

#include

void main()

float a,sin,cos,tan,cot;

printf("請輸入你要求三角函式的變數");

scanf("%f" ,&a);

sin=sin(a);   //呼叫庫函式,譚浩強書後面有cos=sqrt(1-sin*sin);

tan=sin/cos;

cot=1/tan;// 其他的反三角函式也是呼叫庫函式的printf("%f,%f,%f,%f" ,sin,cos,tan,cot);

在c語言中如何實現函式,在c語言中如何實現函式模板

go陌小潔 各種用 c 語言實現的模板可能在使用形式上有所不同。現以一個求和函式 sum 為例,用 c template 可寫如下 template r sum const t array,int n 如果不是內建型別,該模板隱式地需要 有r r operator t 運算子可用。1.使用函式指標作...

用c語言編寫簡單計算器程式,用c語言編寫一個簡單計算器程式

問明 include stdio h 計算器 voidmenu 自定義的選單介面 printf n printf 請輸入你的選擇 n printf 1 n printf 2 n printf 3 n printf 4 n printf n intmain inti 0 intj 0 intnum 0...

C簡易計算器

label 控制元件不包含content這個屬性,你把label3.content全部替換成label3.text 意思是label3控制元件顯示的內容 label3.content 沒有content,你寫成this.label3.text this,是指此頁面中的label控制元件的text文字...