#include <stdio.h>
#include <string.h>
#include <memory.h>
#define FOR(i,n) for(int i=0;i<n;++i)
int T;
char a[204], b[204], s[104];
void read(char a[])
{
scanf("%s", s);
char *p = strtok(s, ".");
int n = strlen(p);
FOR(i, n) a[100+i] = s[n-1-i]&15;
p = strtok(0, ".");
for (int i = 0; p[i]; ++i)
a[99-i] = p[i]&15;
}
int main()
{
scanf("%d", &T);
while (T--)
{
memset(a, 0, sizeof(a));
read(a);
memset(b, 0, sizeof(b));
read(b);
int t = 0;
FOR(i, 204)
{
a[i] += t+b[i];
t = a[i]/10;
a[i] %= 10;
}
for (t = 203; t>100 && !a[t]; --t);
while (t >= 100) putchar(48|a[t--]);
putchar('.');
for (t = 0; !a[t]; ++t);
for (int i = 99; i >= t; --i) putchar(48|a[i]);
puts("");
}
return 0;
}
/**************************************************************
Problem: 1137
User: cust123
Language: C++
Result: Accepted
Time:120 ms
Memory:1012 kb
****************************************************************/
题目1137:浮点数加法
最新推荐文章于 2020-09-03 09:34:05 发布