Java 基础练习题及其实现思路,包括输入、条件判断、循环、数组、随机数等常见知识点

简介: 本文整理Java基础练习题,涵盖输入处理、条件判断、循环、数组、随机数等知识点,通过典型实例帮助初学者掌握编程逻辑与核心语法,夯实Java基础。

Java 基础练习学习笔记

本文整理了一些 Java 基础练习题及其实现思路,涵盖了输入、条件判断、循环、数组、随机数等常见知识点。


1. 求三个数的最大值

题目:输入三个整数,输出其中的最大值。

示例代码:

Scanner sc = new Scanner(System.in);
System.out.println("请输入第一个整数");
int num1 = sc.nextInt();
System.out.println("请输入第2个整数");
int num2 = sc.nextInt();
System.out.println("请输入第3个整数");
int num3 = sc.nextInt();

int big;
if (num1 > num2) {
   
    big = num1;
} else {
   
    big = num2;
}
if (big < num3) {
   
    big = num3;
}
System.out.println("最大值为: " + big);

要点:使用 if-else 比较大小。


2. 程序员工资计算

题目:根据工龄给程序员加薪。

示例代码:

int year = scanner.nextInt();
int basicSalary = scanner.nextInt();
int plusSalary = 0;

if (year >= 10 && year < 15) {
   
    plusSalary = 20000;
    basicSalary += 20000;
} else if (year >= 5 && year < 10) {
   
    plusSalary = 10000;
    basicSalary += 10000;
} else if (year >= 3 && year < 5) {
   
    plusSalary = 5000;
    basicSalary += 5000;
} else if (year >= 1 && year < 3) {
   
    plusSalary = 3000;
    basicSalary += 3000;
}

System.out.println("涨后工资 " + basicSalary);

要点:使用 if-else if 来判断范围。


3. 求 100 以内能被 3 和 5 整除的数之和

示例代码:

int sum = 0;
for (int i = 0; i < 100; i++) {
   
    if (i % 3 == 0 && i % 5 == 0) {
   
        sum += i;
    }
}
System.out.println("这些数的和是" + sum);

要点for 循环 + 逻辑运算符。


4. 特殊数字统计

题目:输入一个大于 100 的数字,统计 100 到该数字之间,百位不是 3、十位不是 5、个位不是 7 的数。

示例代码:

int num = scanner.nextInt();
int count = 0;
for (int i = 100; i < num; i++) {
   
    if (i / 100 != 3 && i / 10 % 10 != 5 && i % 10 != 7) {
   
        count++;
        System.out.println(i);
    }
}
System.out.println("数字个数为" + count);

要点:使用 /% 提取某一位的数字。


5. 四位数“幸运数”

题目:打印所有满足条件的四位数:千位与个位的和等于百位与十位的和。

示例代码:

for (int i = 1000; i < 10000; i++) {
   
    if ((i % 10 + i / 1000 % 10) == (i / 100 % 10 + i / 10 % 10)) {
   
        System.out.println(i);
    }
}

要点:掌握如何拆分数字的各个位数。


6. 简单计算器

题目:输入两个数和运算符,计算结果。

示例代码:

double num1 = sc.nextDouble();
String operator = sc.next();
double num2 = sc.nextDouble();

double result = 0;
boolean valid = true;

switch (operator) {
   
    case "+":
        result = num1 + num2;
        break;
    case "-":
        result = num1 - num2;
        break;
    case "*":
        result = num1 * num2;
        break;
    case "/":
        if (num2 == 0) {
   
            System.out.println("错误:除数不能为0!");
            valid = false;
        } else {
   
            result = num1 / num2;
        }
        break;
    default:
        System.out.println("错误:无效运算符!");
        valid = false;
}
if (valid) {
   
    System.out.println("运算结果是:" + result);
}

要点:使用 switch-case 结构处理不同运算符。


7. 猜数字游戏

题目:随机生成一个 1-100 的数字,用户不断猜,直到猜中为止。

示例代码:

Random random = new Random();
int target = random.nextInt(100) + 1;

while (true) {
   
    int guess = sc.nextInt();
    if (guess > target) {
   
        System.out.println("过大!");
    } else if (guess < target) {
   
        System.out.println("过小!");
    } else {
   
        System.out.println("恭喜你,猜中了!数字是:" + target);
        break;
    }
}

要点:随机数 Random,死循环 while(true),条件判断。


总结

  1. 熟悉 Scanner 输入类。
  2. 掌握 if-elseswitch-case 的使用场景。
  3. 熟练运用 for 循环和 while 循环。
  4. 理解 取余 % 与整除 / 的应用。
  5. 学会使用 Random 生成随机数。

这些练习题覆盖了 Java 的基础编程逻辑,适合入门学习和练习。

相关文章
|
9月前
|
存储 缓存 Java
Java数组全解析:一维、多维与内存模型
本文深入解析Java数组的内存布局与操作技巧,涵盖一维及多维数组的声明、初始化、内存模型,以及数组常见陷阱和性能优化。通过图文结合的方式帮助开发者彻底理解数组本质,并提供Arrays工具类的实用方法与面试高频问题解析,助你掌握数组核心知识,避免常见错误。
|
8月前
|
Java
Java 数组学习笔记
本文整理Java数组常用操作:遍历、求和、查找、最值及二维数组行求和等典型练习,涵盖静态初始化、元素翻倍、去极值求平均等实例,帮助掌握数组基础与应用。
|
10月前
|
Java 数据库连接 数据库
Java 相关知识点总结含基础语法进阶技巧及面试重点知识
本文全面总结了Java核心知识点,涵盖基础语法、面向对象、集合框架、并发编程、网络编程及主流框架如Spring生态、MyBatis等,结合JVM原理与性能优化技巧,并通过一个学生信息管理系统的实战案例,帮助你快速掌握Java开发技能,适合Java学习与面试准备。
451 3
Java 相关知识点总结含基础语法进阶技巧及面试重点知识
|
9月前
|
Java
Java编程:理解while循环的使用
总结而言, 使用 while 迴圈可以有效解决需要多次重复操作直至特定條件被触发才停止執行任务场景下问题; 它简单、灵活、易于实现各种逻辑控制需求但同时也要注意防止因邏各错误导致無限迁璇発生及及時處理可能発生异常以确保程序稳定运作。
609 0
|
10月前
|
存储 缓存 安全
Java基础 - 知识点
Java基础知识点涵盖语言特性、面向对象与基本数据类型、缓存池机制、String类特性、参数传递、类型转换、继承、抽象类与接口区别、重写与重载、Object通用方法及关键字使用等核心内容,是掌握Java编程的重要基石。
152 0
|
10月前
|
存储 Java 索引
java 数组
在 Java 中,数组是一种数据结构,用于存储多个相同类型的数据元素。数组的大小一旦创建后就不能改变,因此它是固定长度的。Java 数组是一种 对象,即使它存储的值是基本类型(如 int、double 等),它也是一个对象引用。
234 0
|
前端开发 Java
java前端:删除数组中指定元素的方法
java前端:删除数组中指定元素的方法
333 1
|
存储 Java 索引
Java快速入门之数组、方法
### Java快速入门之数组与方法简介 #### 一、数组 数组是一种容器,用于存储同种数据类型的多个值。定义数组时需指定数据类型,如`int[]`只能存储整数。数组的初始化分为静态和动态两种: - **静态初始化**:直接指定元素,系统自动计算长度,如`int[] arr = {1, 2, 3};` - **动态初始化**:手动指定长度,系统给定默认值,如`int[] arr = new int[3];` 数组访问通过索引完成,索引从0开始,最大索引为`数组.length - 1`。遍历数组常用`for`循环。常见操作包括求和、找最值、统计特定条件元素等。
|
存储 缓存 算法
提高 Java 数组性能的方法
【10月更文挑战第19天】深入探讨了提高 Java 数组性能的多种方法。通过合理运用这些策略,我们可以在处理数组时获得更好的性能表现,提升程序的运行效率。
559 157
|
Java 索引
Java系列 之 Java复制(拷贝)数组的4种方法:arraycopy()方法、clone() 方法、copyOf()和copyOfRan
这篇文章介绍了Java中数组复制的四种方法:`Arrays.copyOf()`、`Arrays.copyOfRange()`、`System.arraycopy()`和`clone()`方法,以及它们的使用场景和示例代码。