進擊的C語言 簡單的計算器(二)

2021-09-01 23:04:02 字數 904 閱讀 1171

本例項與上例的區別在於表示式中有括號。其實每個括號中的內容都可以看作是乙個單獨的表示式(也可能又帶括號),考慮到這一點,我們可以把程式寫為遞迴呼叫的方式,遇到括號則呼叫自己計算括號中表示式的值。相應的程式**如下:

#include "stdio.h"

#include "stdlib.h"

float get_num(char **);

float calculate(char **);

int main()

float calculate(char **p)

while(**p != 0 && **p != ')' )

else

m = sign*get_num(p);

while(**p == '*' || **p == '/')

else

m *= get_num(p);

}else

else

div = get_num(p);

if(div == 0)

else

m /= div;}}

if(**p != '+' && **p != '-' && **p != 0 && **p != ')')

result += m;

if(**p == '+')

else

if(**p == '-' )

else

if(**p == ')' )

else

break;

}return result;

}float get_num(char **p)

while(**p >= '0' && **p <= '9')

if(**p == '.')

}return n;

}

進擊的C語言 簡單的計算器

程式設計,用來計算使用者輸入的四則運算表示式的值,只含加減乘除,不含括號。例項解析 表示式中含有加減乘除,乘除的優先級別比加減高。我們以鍵盤輸入 3.12 2 3.5 4 8 2 3 6為例來說明演算法。式子中的2 3.5 4 8 2和3 6要先算,算完之後整個表示式將只有4個資料項,剩下的問題就很...

C 簡單的計算器

實驗目的和要求 1.設計背景 設計擁有簡單的計算功能,方便計算簡單的計算題。方便使用者的使用。2.設計功能 具有一般計算功能,能進行基本的加減乘除運算,還具有求根號,倒數等功能。特點是能進行不同進製的運算和不同進製間的轉換。3.模組分解 該計算器分為3個模組,分別是 textbox 顯示區 顯示數字...

c語言7 21簡單計算器

模擬簡單運算器的工作。假設計算器只能進行加減乘除運算,運算數和結果都是整數,四種運算子的優先順序相同,按從左到右的順序計算。輸入格式 輸入在一行中給出乙個四則運算算式,沒有空格,且至少有乙個運算元。遇等號 說明輸入結束。輸出格式 在一行中輸出算式的運算結果,或者如果除法分母為0或有非法運算子,則輸出...