HDOJ 继续水题,杭电2057 ,A+B again题目,关于进制输出的格式小技巧

直接上代码吧。

这一道题,要是麻烦的话,可以很麻烦。。

但是、若是,c语言基础知识比较牢固的话,就是一个考察基本的格式输出的题目,罢了。


代码:

/***** HDOJ 2057 A+B again题目 ********/

/******** written by C_Shit_Hu ************/

/////////又是数学题,不过用到数组和进制转换////////////

/****************************************************************************/
/* 
Problem 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.
*/
/****************************************************************************/


// 代码如下,从数组到进制转换应该注意
// 好吧,我承认,我又把问题复杂化了。。。
// 直接利用十六进制的输出格式就ok了。

#include<stdio.h>
int main()
{
	__int64 a,b;  // 由于定义的数字最多有16位长度,所以定义为int64

	while(scanf("%I64X%I64X",&a,&b)!=EOF)
		printf(a+b>=0?"%I64X\n":"-%I64X\n",a+b>0?a+b:-a-b);    // 完全是考察输出格式的为题,三目运算符的绝佳运用。。
	return 0;
}

/******************************************************/
/********************  心得体会  **********************/
/*
  水水更健康!!!
*/
/******************************************************/


你可能感兴趣的:(HDOJ 继续水题,杭电2057 ,A+B again题目,关于进制输出的格式小技巧)