HDU 1720 A+B Coming

 

#include <string>
#include <cstdio>
#include <iostream>
using namespace std;
int change(char ch)
{
  if(ch<='9' && ch>='0')
  return ch-'0';
  else
  {
    ch=toupper(ch);
    return ch-'A'+10;
  } 
}
int main()
{
  char a[1000],b[1000];
  int sa,sb,ans;
  while (cin>>a>>b)
  {
    sa=0; sb=0;
    for (int i=0; i<strlen(a); i++)
    {
      sa*=16;
      sa+=change(a[i]);
    }
    for (int i=0; i<strlen(b); i++)
    {
      sb*=16;
      sb+=change(b[i]);
    }
    printf("%d\n",sa+sb);
  }
  return 0;
}

 

翻译: hexadecimal number 十六进制数

注意点:字符数组是从0开始的,积累字符转化函数toupper,需要用库string。

posted @ 2013-12-14 09:31  forever97  阅读(169)  评论(0编辑  收藏  举报