NYOJ:2444進数の単純演算(c言語ベース)

845 ワード

16進法の単純演算
時間制限:
1000 ms|メモリ制限:
65535 KB
難易度:
1
説明
16進数の加減式をあげます.8進数で式の結果を出力する必要があります.
入力
最初の行には正の整数T(0の次にT行があり、各行には1つの文字列s(長さ15未満)が入力されます.文字列には2つの数と1つのプラス記号または1つのマイナス記号が入力され、式は合法的で、すべての演算数は31ビット未満です.
しゅつりょく
各式の出力は1行を占め、式の8進数の結果を出力します.
サンプル入力
3
29+4823
18be+6784
4ae1-3d6c

サンプル出力
44114
100102
6565

ソース
[通りすがり]オリジナル
アップロード者
ここを通る
最初は回り道をしたばかりで、完全に文字列として処理してしまい、面倒くさい...実は%x%c%dを直接使うことができます.の
#include 
int main()
{
	int t;
	scanf("%d",&t);
	while(t--)
	{
		char op;
		int a,b;
		scanf("%x%c%x",&a,&op,&b);
		if(op=='+')
		{
			printf("%o
",a+b); } if(op=='-') { printf("%o
",a-b); } } return 0; }