跳至主要內容

Java 入门练习:1 - 5

村雨遥原创大约 3 分钟Java 入门练习Java

Java 入门练习:1 - 5

共勉

不要哀求,学会争取。若是如此,终有所获。

JAVA1 类型转换

描述

设计一个方法,将一个小于2147483647的double类型变量以截断取整方式转化为int类型

输入描述

随机 double 类型变量

输出描述

转化后的 int 类型变量

示例 1

输入:

12.34

输出:

12

示例 2

输入:

1.88

输出:

1

解答

要将 double 类型转换为 int 类型,而且是以截断取整的方式,所以直接通过强制转换即可。

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        double d = scanner.nextDouble();
        System.out.println(Main.typeConversion(d));
    }

    public static int typeConversion(double d) {
        return (int)d;
    }
}

JAVA2 简单运算

描述

输入两个正整数 a 和 b,输出这两个正整数的和,差,积,商,模(若 a > b 则输出 a - b,a / b,a % b 的值反之输出 b-a,b/a,b%a 的值,不考虑小数,请使用 int 类型)

输入描述

两个正整数

输出描述

它们的和,差,积,商,模。每个值之间用空格隔开

示例 1

输入:

10 5

输出:

15 5 50 2 0

解答

主要考察条件语句 if...else...,当 a > b 时,执行 if 中的逻辑,否则就执行 else 中的逻辑。

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();

        if (a > b) {
            System.out.println((a + b) + " " + (a - b) + " " + (a * b) + " " +
                               (a / b) + " " + (a % b));
        } else {
            System.out.println((a + b) + " " + (b - a) + " " + (a * b) + " " +
                               (b / a) + " " + (b % a));
        }
    }
}

JAVA3 四舍五入

描述

定义一个 int 类型变量 i, i 为由浮点数变量 d 四舍五入后的整数类型,请将转换后的i进行输出

输入描述

用户随机输入的浮点数

输出描述

四舍五入之后的整数(小数点后一位 >=5 则进一,否则舍去)

示例 1

输入:

14.99

输出:

15

解答

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        double d = scanner.nextDouble();

        int i = (int)d;
        if (d - i >= 0.5) {
            i += 1;
        }

        System.out.println(i);
    }
}

JAVA4 交换变量值

描述

在不使用第三个变量的情况下交换两个 int 类型变量的值

输入描述

a 变量和 b 变量的值

输出描述

交换后 a 变量和 b 变量的值,中间用空格隔开

示例 1

输入:

1 2

输出:

2 1

解答

先将 ab 之和赋给 a,接着将 ab 的差赋值给 b,此时 b = a + b - b = a,此时就交换了 ab 的值,然后再将 ab 的差赋值给 a,此时 a = a + b - a,此时就将 b 的值赋给了 a

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();

        a =  a + b;
        b = a - b;
        a = a - b;
        System.out.println(a + " " + b);
    }
}

JAVA5 计算商场折扣

描述

牛牛商场促销活动:

满 100 全额打 9 折;

满 500 全额打 8 折;

满 2000 全额打 7 折;

满 5000 全额打 6 折;

且商场有抹零活动,不足一元的部分不需要付款(类型强制转换)

牛大姨算不清楚自己应该付多少钱,请你帮忙算一下

输入描述

牛大姨账单钱数(int 类型)

输出描述

参加活动后,牛大姨应付钱数(int 类型)

示例 1

输入:

654

输出:

523

解答

多分支条件判断,根据题意,将原价分为 5 个档次,然后通过价格所处档次乘以对应折扣,就得到打折后的价格,但是要注意,由于有抹零活动,所以需要强转一下。

import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner console = new Scanner(System.in);
        int price = console.nextInt();
        int cost = 0;

        if (price >= 5000) {
            cost = (int)(price * 0.6);
        } else if (price >= 2000) {
            cost = (int)(price * 0.7);
        } else if (price >= 500) {
            cost = (int)(price * 0.8);
        } else if (price >= 100) {
            cost = (int)(price * 0.9);
        } else {
            cost = (int)price;
        }
        System.out.println(cost);
    }
}

⏳ 联系

想解锁更多知识?不妨关注我的微信公众号:村雨遥(id:JavaPark)

扫一扫,探索另一个全新的世界。

上次编辑于:
贡献者: 村雨遥