给定区间[ −231,231] 内的3个整数A、B和C,请判断A+B是否大于C。
输入格式:
输入第1行给出正整数T(<=10),是测试用例的个数。随后给出T组测试用例,每组占一行,顺序给出A、B和C。整数间以空格分隔。
输出格式:
对每组测试用例,在一行中输出“Case #X: true”如果A+B>C,否则输出“Case #X: false”,其中X是测试用例的编号(从1开始)。
输入样例:
4
1 2 3
2 3 4
2147483647 0 2147483646
0 -2147483648 -2147483647
输出样例:
Case #1: false
Case #2: true
Case #3: true
Case #4: false
代码
#include<stdio.h>
int main()
{
int T = 0,i = 0;
scanf("%d",&T);
int A[10],B[10],C[10];
int flag[10] = {0};
for(i = 0; i < T; i++)
{
scanf("%d %d %d",&A[i],&B[i],&C[i]);
}
for(i = 0; i < T; i++)
{
if((A[i] >= 0)&&(B[i] <= 0)||(A[i] <= 0)&&(B[i] >= 0))
{
if((A[i] + B[i]) > C[i])
{
flag[i] = 0;
continue;
}
else
{
flag[i] = 1;
continue;
}
}
else if((A[i] > 0)&&(B[i] > 0))
{
if((A[i] >= C[i])||(B[i] >= C[i]))
{
flag[i] = 0;
continue;
}
else
{
if((C[i] - A[i]) < B[i])
{
flag[i] = 0;
continue;
}
else
{
flag[i] = 1;
continue;
}
}
}
else if((A[i] < 0)&&(B[i] < 0))
{
if((A[i] <= C[i])||(B[i] <= C[i]))
{
flag[i] = 1;
continue;
}
else
{
if((C[i] - A[i]) < B[i])
{
flag[i] = 0;
continue;
}
else
{
flag[i] = 1;
continue;
}
}
}
}
for(i = 0; i < T; i++)
{
if(flag[i] == 0)
{
printf("Case #%d: true\n",i+1);
}
if(flag[i] == 1)
{
printf("Case #%d: false\n",i+1);
}
}
return 0;
}