A+B Problem
1000(ms)
10000(kb)
1474 / 5285
小明今年3岁了, 现在他已经能够认识100以内的非负整数, 并且能够进行100以内的非负整数的加法计算 对于大于等于100的整数(整数很大,可能超过long long), 小明仅保留该数的最前面两位进行计算. 例如, 对于小明来说 1234和12是相等的 给定非负整数A和B, 你的任务是代表小明计算出A+B的值.
输入
多组输入
每组数据2个非负整数A和B(可以考虑字符串输入)
输出
小明算出的A+B的值
样例输入
12354 55
666 333
116315561563 56415615631563115613145413515315361453223153153163131
样例输出
67
99
67
#include<stdio.h>
#include<string.h>
int main()
{
int a;
int n,m;
char b[1000],c[1000];//用来储存输入数据
while(~scanf("%s %s",b,c))//循环输入,即多组输入格式
{
n=strlen(b);//获取输入数据的长度
m=strlen(c);
if(n>=2&&m>=2)//如果大于或等于2位数
{
n=(b[0]-'0')*10+(b[1]-'0');
m=(c[0]-'0')*10+(c[1]-'0');
}
else if(n==1&&m==1)//如果刚好为1位数
{
n=(b[0]-'0');
m=(c[0]-'0');
}
else if(n==1&&m>=2)//如果一个是一位数,一个是俩位数
{
n=(b[0]-'0');
m=(c[0]-'0')*10+(c[1]-'0');
}
else if(n>=2&&m==1)//如果一个是俩位数,一个是一位数
{
n=(b[0]-'0')*10+(b[1]-'0');
m=(c[0]-'0');
}
a=m+n;
printf("%d\n",a);
}
}