ハング電動ブラシOJタイトル(2057)

A + B再び(2つの16進数)

件名の説明:

今、新しいものが来て、私たちのHDOJの多くのA + Bの問題が存在する必要があります。
あなたに2つの16進整数を与え、あなたのタスクは、それらの合計を計算し、あまりにも進数でそれを印刷することです。
簡単?ACそれ!

入力

入力はいくつかのテストケースが含まれている、ファイルの最後に処理してください。
それぞれの場合は空白で区切られた行における2つの16進整数AとBから成ります。
AとBの長さが15未満です。

出力

各テストケースのために、1つのラインの進数でAとBの合計を印刷します。

サンプル入力

+ A、-A 
+ 1A 12 
(a)-9 
-1A -12 
1A -AA

サンプル出力

0 
2C 
11 
-2C 
-90

その答えによって:

#include <stdio.h>        //可直接计算两个16进制数之和 
int main() {
    __int64 a,b,sum;       //Int64是有符号 64 位整数数据类型
    while (scanf("%I64X %I64X", &a,&b)!=EOF) {
    	sum=a+b;
    	if(sum>=0)              //用%I64X就可以对数据读入输出进行操作。  
    	    printf("%I64X\n",sum);
    	else                    //问题在于直接用%I64X,是不能输出负数的,所以我们碰到负数要自己转成正数,在前面加‘-’。 
    	    printf("-%I64X\n",-sum);
    }
    return 0;
}

 

发布了76 篇原创文章 · 获赞 3 · 访问量 1869

おすすめ

転載: blog.csdn.net/ZhangShaoYan111/article/details/104295184