16进制的简单运算

题目描述

  现在给你一个16进制的加减法的表达式,要求用8进制输出表达式的结果。

输入描述

  第一行输入一个正整数T(0<T<100000)
  接下来有T行,每行输入一个字符串s(长度小于15)字符串中有两个数和一个加号或者一个减号,且表达式合法并且所有运算的数都小于31位

输出描述

  每个表达式输出占一行,输出表达式8进制的结果。

输入样例

3
29+4823
18be+6784
4ae1-3d6c

输出样例

44114
100102
6565

测试代码

 1 #include <stdio.h>
 2 
 3 int main(void)
 4 {
 5     int s, a, b;
 6     char op;
 7     scanf("%d", &s);
 8     while (s--)
 9     {
10         scanf("%x%c%x", &a, &op, &b);
11         if (op == '+')
12         {
13             printf("%o\n", a + b);
14         }
15         else
16         {
17             printf("%o\n", a - b);
18         }
19     }
20     return 0;
21 }

 

posted @ 2016-06-18 16:08  新生代黑马  阅读(499)  评论(0)    收藏  举报