字首式計算 OJ

2021-08-08 09:14:58 字數 1315 閱讀 6023

時間限制:

1000 ms  |  記憶體限制:

65535 kb

難度:3 描述

先說明一下什麼是中綴式:

如2+(3+4)*5這種我們最常見的式子就是中綴式。

而把中綴式按運算順序加上括號就是:(2+((3+4)*5))

然後把運算子寫到括號前面就是+(2 *( +(3 4) 5) )

把括號去掉就是:+ 2 * + 3 4 5

最後這個式子就是該表示式的字首表示。

給你乙個字首表示式,請你計算出該字首式的值。

比如:+ 2 * + 3 4 5的值就是 37

輸入

有多組測試資料,每組測試資料佔一行,任意兩個操作符之間,任意兩個運算元之間,運算元與操作符之間都有乙個空格。輸入的兩個運算元可能是小數,資料保證輸入的數都是正數,並且都小於10,運算元數目不超過500。

以eof為輸入結束的標誌。

輸出對每組資料,輸出該字首表示式的值。輸出結果保留兩位小數。

樣例輸入

+ 2 * + 3 4 5

+ 5.1 / 3 7

樣例輸出

37.00

5.53

個人理解:

1.#include函式庫中的標頭檔案

,定義了一批c語言字元

分類函式(c character classification functions),用於測試字元是否屬於特定的字元類別,如字母字元、控制字元等等。既支援單位元組

字元,也支援寬字元。

2. 3.

結果時間

記憶體語言

acceptted

4300c

**:#include

#include

#include /*c標準

函式庫中的標頭檔案

,定義了一批c語言字元

分類函式,用於測試字元是否屬於特定的字元類別,如字母字元、控制字元等等*/

#define maxsize 5000

struct node sta[maxsize];

char buf[maxsize];

double cal(double a, double b, char c)

int main()

sta[id].num = val; sta[id++].symbol = 0;

i = i + wid - 1;

} else sta[id++].symbol = buf[i];

}printf("%.2lf\n", sta[0].num);

}return 0;}

字首式計算

時間限制 1000 ms 記憶體限制 65535 kb 難度 3 描述 先說明一下什麼是中綴式 如2 3 4 5這種我們最常見的式子就是中綴式。而把中綴式按運算順序加上括號就是 2 3 4 5 然後把運算子寫到括號前面就是 2 3 4 5 把括號去掉就是 2 3 4 5 最後這個式子就是該表示式的字...

字首式計算

時間限制 1000 ms 記憶體限制 65535 kb 難度 3 描述 先說明一下什麼是中綴式 如2 3 4 5這種我們最常見的式子就是中綴式。而把中綴式按運算順序加上括號就是 2 3 4 5 然後把運算子寫到括號前面就是 2 3 4 5 把括號去掉就是 2 3 4 5 最後這個式子就是該表示式的字...

字首式計算

時間限制 1000 ms 記憶體限制 65535 kb 難度 3 描述 先說明一下什麼是中綴式 如2 3 4 5這種我們最常見的式子就是中綴式。而把中綴式按運算順序加上括號就是 2 3 4 5 然後把運算子寫到括號前面就是 2 3 4 5 把括號去掉就是 2 3 4 5 最後這個式子就是該表示式的字...