您的位置:首页 > 编程语言 > C语言/C++

PAT(乙级)1001 A+B和C (15)

2016-09-03 19:35 239 查看
题目来源:http://www.nowcoder.com/pat/6/problems


题目描述

给定区间[-2的31次方, 2的31次方]内的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

题目分析:

此题的关键是数字用哪个类型来存储,int类型(-2147483648~2147483647),所以当两个数字相加时可能会出现溢出的问题,所以采用long long类型来存储(long long 8字节)。

#include<stdio.h>
int main()
{
int n;
int i;
int count=1;
long long array[10][3];
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%lld%lld%lld",&array[i][0],&array[i][1],&array[i][2]);
if(array[i][0]+array[i][1]>array[i][2])
printf("Case #%d: true\n",count);
else printf("Case #%d: false\n",count);
count++;
}
return 0;
}




内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  C++ PAT 类型范围