c语言 溢出时截断前面还是后面_C语言溢出问题

题目描述

PAT Advanced 1065

题目来源及自己的思路

考察的是溢出问题

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)

#include

int main(int argc, char const *argv[])

{

int N = 0;

long long A, B, C;

scanf("%d", &N);

for (int i = 1; i <= N; ++i)

{

scanf("%lld %lld %lld", &A, &B, &C);

long long result = A + B;

if (result < 0 && A > 0 && B > 0) {

// 正溢出

printf("Case #%d: true\n", i);

}else if (result > 0 && A < 0 && B < 0) {

// 负溢出

printf("Case #%d: false\n", i);

}else if (result > C) {

printf("Case #%d: true\n", i);

} else {

printf("Case #%d: false\n", i);

}

}

return 0;

}

你期待的结果是什么?实际看到的错误信息又是什么?

我不知道第三个case为什么一直是错的,我实在是排查不出来哪里出问题了,求各位大神帮忙

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值