题解 | #简单运算#

简单运算

http://www.nowcoder.com/practice/6817945637dd4a31811d38313653e967

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int a = scanner.nextInt();
        int b = scanner.nextInt();
        scanner.close();
        //a和b的值互换
        if(a<b) a=a+b-(b=a);
        System.out.printf("%d %d %d %d %d",a+b,a-b,a*b,a/b,a%b);
        

    }
}
全部评论
初看不懂,再看确实精妙。小白记录一下:先算括号内部 b = a,再算 a = a + b - a ,结果使得a b 互换。
4 回复 分享
发布于 2023-01-04 08:22 广东
(若a>b则输出a-b,a/b,a%b的值反之输出b-a,b/a,b%a的值,不考虑小数,请使用int类型) 差:求差的绝对值,Math.abs(a-b) 商:求最大的那个商,Math.max(a/b, b/a) 模:求最小的那个模,Math.min(a%b,b%a)
3 回复 分享
发布于 2022-01-23 14:41
牛批的置换,省空间必备的啊
2 回复 分享
发布于 2022-03-09 18:47
a=a+b-(b=a); 这是什么运算啊?怎么没见过啊?大佬指点一二呗
2 回复 分享
发布于 2021-10-20 22:06
不推荐这么写吧,我记得有报错风险的
1 回复 分享
发布于 2025-02-15 16:31 江西
我只能说:母牛下崽,牛逼毁了
1 回复 分享
发布于 2022-08-15 10:58
这样写的话,a + b可能超出数据范围(如int的最大值),导致溢出错误。 使用临时变量更好些
点赞 回复 分享
发布于 2025-12-08 22:26 河南
这种交换方法不推荐,会改变a的值。如果存在数据溢出的情况,在实际开发的场景中会导致后面部分的值是负数。
点赞 回复 分享
发布于 2025-10-04 20:28 香港
小白记录:b=a+b-(a=b),先计算括号内,即先b值赋给a,然后再a的值赋给b。实现交换
点赞 回复 分享
发布于 2024-01-16 09:36 北京
逆天
点赞 回复 分享
发布于 2024-01-09 14:02 广东
为什么要加置换啊,不是都一样吗,
点赞 回复 分享
发布于 2023-09-12 11:42 陕西
为什么要加置换啊,不是都一样吗,
点赞 回复 分享
发布于 2023-09-12 11:42 陕西
为什么要加置换啊,不是都一样吗,
点赞 回复 分享
发布于 2023-09-12 11:42 陕西
为什么要加置换啊,不是都一样吗,
点赞 回复 分享
发布于 2023-09-12 11:42 陕西
为什么要加置换啊,不是都一样吗,
点赞 回复 分享
发布于 2023-09-12 11:42 陕西
为什么要加置换啊,不是都一样吗,
点赞 回复 分享
发布于 2023-09-12 11:42 陕西
为什么要加置换啊,不是都一样吗,
点赞 回复 分享
发布于 2023-09-12 11:42 陕西
这个代码牛逼啊,用最短的方法实现了代码
点赞 回复 分享
发布于 2023-08-03 11:03 上海
牛逼股份公司招你进来,来不
点赞 回复 分享
发布于 2023-06-15 13:58 上海
这置换秒啊,真简洁
点赞 回复 分享
发布于 2022-12-08 13:31 四川

相关推荐

评论
249
51
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务