問題敘述性說明:
輸入區區四個簡單的算術表示式,包括乙個數字串,表示式的計算值
注意: 1、只包含表示式 +, -, *, / 四家運營商,不包括括號
2、表示式數值僅僅包括個位整數(0-9),且不會出現0作為除數的情況
3、要考慮加減乘除按通常四則運算規定的計算優先順序
4、除法用整數除法,即僅保留除法運算結果的整數部分。
比方8/3=2。輸入表示式保證無0作為除數情況發生
5、輸入字串一定是符合題意合法的表示式,當中僅僅包含數字字元和四則運算符字元,除此之外不含其他不論什麼字元。不會出現計算溢位情況
• 要求實現函式:
int calculate(int len,char *expstr)
【輸入】 int len: 字串長度。
char *expstr: 表示式字串。
【輸出】 無
【返回】 計算結果
• 演示樣例
1) 輸入:char *expstr = 「1+4*5-8/3」
函式返回:19
2) 輸入:char *expstr = 「8/3*3」
函式返回:6
c**例如以下:
[cpp]view plain
copy
#include
#include
#include
#include//包括isdigit函式
#define max 100
intcalculate(
intlen,
char
* expstr);
intmain()
intcalculate(
intlen,
char
* expstr)
if(*(expstr+i) ==
'*')
//假設是乘法,能夠先計算出其左右兩數之乘積
if(*(expstr+i) ==
'/')
//假設是除法,能夠先計算其左右兩數之商
else
} if(*(expstr+i) ==
'+'|| *(expstr+i) ==
'-')
//對於加減法,則須要進入符號陣列
} /*假設符號陣列中有n個符號,則數字陣列中一定有n+1個數字,
而且假設乙個符號在符號陣列中的索引為i,
則該符號相應的第二個運算元一定在數字陣列中的第i+1個位置。
*/for
(i=0; i
else
} return
number[0];
}
簡單四則運算
form1 如下 using system using system.collections.generic using system.componentmodel using system.data using system.drawing using system.linq using syst...
簡單四則運算
實現乙個簡單的四則混合運算。並且在計算100範圍以內。我實現的是兩位數之間的加減乘除混合運算,首先先定義幾個量。然後思考一下你所想要的計算方式,我在這裡就簡單的進行了數字的加減乘除,進行分為各種情況,這裡僅僅把四組的數字的混合運算一下,然後新增監聽並達到的要求。我的這個四則運算存在很多的不足,例如乘...
簡單的四則運算
程式介紹 這個程式比較人性化,每做完一道題都可以進行選擇,接下來是要做什麼。程式剛開始進入的是選擇頁面,這個頁面是選擇要進行什麼運算 目錄 1.加法運算 2.減法運算 3.乘法運算 4.除法運算 0.結束運算 請輸入你想進行運算的序號 接下來要進行選擇具體要進行什麼運算,是整數的四則運算還是真分數的...