16進製的簡單運算
16進製的簡單運算
時間限製:1000 ms | 內存限製:65535 KB
難度:1
- 描述
- 現在給你一個16進製的加減法的表達式,要求用8進製輸出表達式的結果。
- 輸入
- 第一行輸入一個正整數T(0<T<100000)
接下來有T行,每行輸入一個字符串s(長度小於15)字符串中有兩個數和一個加號或者一個減號,且表達式合法並且所有運算的數都小於31位 - 輸出
- 每個表達式輸出占一行,輸出表達式8進製的結果。
- 樣例輸入
-
3 29+4823 18be+6784 4ae1-3d6c
- 樣例輸出
-
44114 100102 6565
- 這題不能采用CIN COUT,否則就會超時,還是采用scanf,printf吧
查看代碼---運行號:252210----結果:Accepted
運行時間:2012-10-05 13:30:22 | 運行人:huangyibiao
01.
#include <cstdio>
02.
using
namespace
std;
03.
04.
int
main()
05.
{
06.
long
firstNum,
07.
secondNum;
08.
char
op;
09.
int
t;
10.
11.
scanf
(
"%d "
, &t);
12.
while
(t--)
13.
{
14.
scanf
(
"%x%c%x"
,
&firstNum, &op, &secondNum);
15.
if
(op ==
'+'
)
16.
printf
(
"%o\n"
,
firstNum+secondNum);
17.
else
18.
printf
(
"%o\n"
,
firstNum-secondNum);
19.
}
20.
21.
return
0;
22.
}
最後更新:2017-04-02 15:14:54