B - A + B Again
Description
There must be many A + B problems in our HDOJ , now a new one is coming. Give you two hexadecimal integers , your task is to calculate the sum of them,and print it in hexadecimal too. Easy ? AC it !
Input
The input contains several test cases, please process to the end of the file. Each case consists of two hexadecimal integers A and B in a line seperated by a blank. The length of A and B is less than 15.
Output
For each test case,print the sum of A and B in hexadecimal in one line.
Sample Input
+A -A +1A 12 1A -9 -1A -12 1A -AA
Sample Output
0 2C 11 -2C -90
十六进制两数相加并输出十六进制
定义 __int64 即可
C语言输入输出十六进制 用 “%X” 输入__int64的十六进制为"%I64X“
所以直接相加减
但是 电脑储存的数为补码 结果若为正数则无影响 但若为负数 则必须将结果变为正数输出 printf("-%I64X\n",-c);
#include<stdio.h> int main() { __int64 a,b,c; char s[100]; while(scanf("%I64X%I64X",&a,&b)!=EOF) { c=a+b; if(c<0) printf("-%I64X\n",-c); else printf("%I64X\n",c); } return 0; }