oj提示10个样例有两个不通过,但是我看不到具体的样例是什么,求指点哪里有漏洞

#include<stdio.h>
#include<math.h>
double s(int x1, int y1, int x2, int y2 )
{
double sum;
int t,t1;
t = x2 + y2 - x1 - y1;
sum = 0;
sum += sqrt(x2 * x2 * 2);//求出坐标值较大的点距离上一个y轴上的点的距离
t1 = x2 + y2;
while (t1 - 1 > x1 + y1)//加上斜率为-1的线的长度
{
sum += sqrt(2) * (t1 - 1);
t1--;
}
while (t != 0)//加上另外一种斜线的长度
{
sum += sqrt((y2+x2)*(y2+x2) + (y2 + x2-1) * (y2 + x2-1));
t--;
y2--;
}
sum += sqrt(2)*y1;//加上坐标值较小的点距下一个x轴上的点的距离
return sum;
}
int main()
{
int x1, x2, y1, y2,n,x,y,a=0;
scanf("%d", &n);
double sum;
while (a < n)
{
scanf("%d %d %d %d", &x1, &y1, &x2, &y2);
if ((x1 + y1) > (x2 + y2))//将x2y2设为坐标值较大的点
{
x = x1;
y = y1;
x1 = x2;
y1 = y2;
x2 = x;
y2 = y;
}
sum = s(x1, y1, x2, y2);
printf("%.3f\n", sum);
a++;
}
return 0;
}