//1011 A+B和C (15)(15 分)
//给定区间[-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
C:
#include <stdio.h>
int main(int argc, const char * argv[]) {
int T;
scanf("%d", &T);
double a = 0,b = 0,c = 0;
for (int i = 0; i < T; i++) {
scanf("%lf %lf %lf",&a,&b,&c);
printf("Case #%d: %s\n", i + 1 ,a + b > c ? "true":"false");
}
return 0;
}
这题自己尝试了一下,但是没有注意到int溢出了,当第4个输入样例输入后无法读入,后改为double做,double的scanf和printf都用%lf。
sizeof后得出
char : 1字节
short : 2字节
int : 4字节
float : 4字节
long : 8字节
double : 8字节
因此操作系统为64位。
网友评论