Java练习题——运算符

Java基础学习篇之小练习

前言

本文列举了几个经典题目,运用运算符知识就可以解决这些题目

1.利用三元运算符求任意三个数中最大者

import java.util.Scanner;//导入包
public class 求三个数中最大值 {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int max1 , max;
        System.out.println("请输入第一个数:");
        int x = in.nextInt();
        System.out.println("请输入第二个数:");
        int y = in.nextInt();
        System.out.println("请输入第三个数:");
        int z = in.nextInt();
        max1 = (x > y) ? x : y;//比较x,y的大小,并将较大的那个赋值给max1
        max =(max1 > z) ? max1 : z;//比较max1,z的大小,并将较大的那个赋值给max
        System.out.println("三个数中最大数是:"+max);
    }
}

本题要注意运用Java语言编程时,若想获得键盘输入,一定要包含以下三条语句

import java.util.Scanner

Scanner in = new Scanner(System.in)

int i = in.nextInt()

三条语句中加粗斜体部分可以自己改变,但三处一定要保持一致。int 后写变量名,第三条语句可以写N条,没有数量限制。如果是double型则输入:int double i = in.nextDouble();

2.将任意一个三位数的个位、十位、百位分别输出

import java.util.Scanner;
public class 数值拆分 {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
                int ge,shi,bai;
                double num;
        System.out.println("请输入三位数:");
                num = in.nextDouble();
                bai = (int)(num / 100);
                shi = (int)((num -bai *100)/10);
                ge = (int) (num - bai * 100 - shi * 10);
        System.out.println("个位数是:"+ge);
        System.out.println("十位数是:"+shi);
        System.out.println("百位数是:"+bai);
    }
}

本题运用了强制类型转换的知识,直接抹去除法运算后的小数点,留下每位数字。
如:123.0 / 10 =1.23(浮点型)将该数字强制转换为整型就是1,也就是百位数字,再将输入的数字减去百位数字*100得到一个两位数,运用相同的方法求出十位与个位,再分别打印输出。
本题还有另一种解题思路:通过取余数得到个位,再将输入的数字减去个位数并除以10得到一个两位数,运用相同的方法得到十位和百位,代码如下:

import java.util.Scanner;
public class 数值拆分2 {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int ge, shi, bai, num;
        System.out.println("请输入三位数:");
        num = in.nextInt();
        ge = num % 10;
        shi = ((num - ge) / 10) % 10;
        bai = (num - shi * 10 - ge) / 100;
        System.out.println("个位数是:" + ge);
        System.out.println("十位数是:" + shi);
        System.out.println("百位数是:" + bai);
    }
}

3.若任意两数和是3的倍数或其中一个为3,则输出true,否者输出false

import java.util.;Scanner
public class Test {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int x , y;
        boolean result;
        System.out.println("请输入第一个数字:");
        x = in.nextInt();
        System.out.println("请输入第二个数字:");
        y = in.nextInt();
        result = ((x + y) % 3 == 0) || x == 3 || y == 3;
        System.out.println(result);
    }
}

此题运用了逻辑运算符、关系运算符和算术运算符的知识,判断和为3的倍数则:和除以3的余数是否为0,注意是判断,要用“==”,若用“=”则意味着赋值,不论输入何值,其结果都为true。

结语

运算符章节比较基础,重点是不要将”==“与”=“混淆即可。文中的代码仅供参考,如果有更加简洁的解法欢迎留言交流。

  • 13
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Alita11101_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值