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 的基础编程逻辑,适合入门学习和练习。

相关文章
|
5月前
|
存储 缓存 Java
Java数组全解析:一维、多维与内存模型
本文深入解析Java数组的内存布局与操作技巧,涵盖一维及多维数组的声明、初始化、内存模型,以及数组常见陷阱和性能优化。通过图文结合的方式帮助开发者彻底理解数组本质,并提供Arrays工具类的实用方法与面试高频问题解析,助你掌握数组核心知识,避免常见错误。
|
4月前
|
Java
Java 数组学习笔记
本文整理Java数组常用操作:遍历、求和、查找、最值及二维数组行求和等典型练习,涵盖静态初始化、元素翻倍、去极值求平均等实例,帮助掌握数组基础与应用。
|
6月前
|
Java 数据库连接 数据库
Java 相关知识点总结含基础语法进阶技巧及面试重点知识
本文全面总结了Java核心知识点,涵盖基础语法、面向对象、集合框架、并发编程、网络编程及主流框架如Spring生态、MyBatis等,结合JVM原理与性能优化技巧,并通过一个学生信息管理系统的实战案例,帮助你快速掌握Java开发技能,适合Java学习与面试准备。
320 2
Java 相关知识点总结含基础语法进阶技巧及面试重点知识
|
5月前
|
Java
Java编程:理解while循环的使用
总结而言, 使用 while 迴圈可以有效解决需要多次重复操作直至特定條件被触发才停止執行任务场景下问题; 它简单、灵活、易于实现各种逻辑控制需求但同时也要注意防止因邏各错误导致無限迁璇発生及及時處理可能発生异常以确保程序稳定运作。
499 0
|
6月前
|
存储 缓存 安全
Java基础 - 知识点
Java基础知识点涵盖语言特性、面向对象与基本数据类型、缓存池机制、String类特性、参数传递、类型转换、继承、抽象类与接口区别、重写与重载、Object通用方法及关键字使用等核心内容,是掌握Java编程的重要基石。
122 0
|
6月前
|
存储 Java 索引
java 数组
在 Java 中,数组是一种数据结构,用于存储多个相同类型的数据元素。数组的大小一旦创建后就不能改变,因此它是固定长度的。Java 数组是一种 对象,即使它存储的值是基本类型(如 int、double 等),它也是一个对象引用。
177 0
|
7月前
|
缓存 NoSQL Java
校招 Java 面试常见知识点及实战案例全解析
本文全面解析了Java校招面试中的常见知识点,涵盖Java新特性(如Lambda表达式、、Optional类)、集合框架高级应用(线程安全集合、Map性能优化)、多线程与并发编程(线程池配置)、JVM性能调优(内存溢出排查、垃圾回收器选择)、Spring与微服务实战(Spring Boot自动配置)、数据库与ORM框架(MyBatis高级用法、索引优化)、分布式系统(分布式事务、缓存应用)、性能优化(接口优化、高并发限流)、单元测试与代码质量(JUnit 5、Mockito、JaCoCo)以及项目实战案例(电商秒杀系统、社交消息推送)。资源地址: [https://pan.quark.cn/s
228 4
|
7月前
|
存储 设计模式 算法
校招 Java 面试常见知识点汇总及备考指南
本文全面解析校招Java面试常见知识点,涵盖Java基础、集合框架、多线程并发、JVM等内容。从面向对象特性(封装、继承、多态)到数据类型与包装类,再到字符串处理和关键字用法,逐一剖析。集合框架部分深入讲解List、Set、Map接口及其常用实现类的特性和应用场景。多线程章节探讨线程创建、同步机制及线程池的使用。JVM部分聚焦内存区域、垃圾回收机制和类加载过程。结合实际案例,助你轻松应对校招面试!资源地址:[点此获取](https://pan.quark.cn/s/14fcf913bae6)。
180 0
|
存储 算法 安全
Java面试题:Java内存模型及相关知识点深度解析,Java虚拟机的内存结构及各部分作用,详解Java的垃圾回收机制,谈谈你对Java内存溢出(OutOfMemoryError)的理解?
Java面试题:Java内存模型及相关知识点深度解析,Java虚拟机的内存结构及各部分作用,详解Java的垃圾回收机制,谈谈你对Java内存溢出(OutOfMemoryError)的理解?
230 0
|
Java 程序员
Java this关键字详解(3种用法),Java程序员面试必备的知识点
Java this关键字详解(3种用法),Java程序员面试必备的知识点