PAT——A+B和C

来源:互联网 发布:linux sed 编辑:程序博客网 时间:2024/05/21 10:34

最近开始练习PAT测试,想通过写博客一方面能和大家一起交流做题的心得,另一方面,也想保留自己这段时间刷题的经历,不管写的好与不好,也请大家多多包涵。
题目:给定区间[-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开始)。
样例:输入样例
输出样例
分析:这道题目一开始我觉得很简单,其实最后也的确很简单,但是当时我觉得,就是一个比较大小,然后输出,结果发现没有考虑数据类型的区间,而int的数据范围在本题中会产生溢出而导致两个数无法比较大小,然后我开始陷入死角,一直纠结三个数应该考虑多少种特殊情况才能保证代码的正确性,不发生溢出,后来看了其他人的一些回复,其实只要将int类型改为long int类型就可以解决这个问题,代码如下:
参考代码
谢谢!

原创粉丝点击