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