Skip to content

随堂实操任务清单 第 5 讲

💡 操作指南:点击每个任务右上角的 “复制模板代码 📋”,在您的 IDE(IntelliJ IDEA / VS Code)中打开对应类文件并补全核心代码。运行结果请参考下方的 “预期控制台输出” 进行自测比对。

← 返回《Java程序设计》大纲


实操 1经典九九乘法表 (双重循环与格式化对齐)MultiplicationTable.java
java
/**
 * 经典九九乘法表 (双重循环与格式化对齐)
 * @author MatNoble
 */
public class MultiplicationTable {
    public static void main(String[] args) {
        System.out.println("================= 九九乘法表 =================");
        for (int i = 1; i <= 9; i++) {
            for (int j = 1; j <= i; j++) {
                System.out.printf("%d*%d=%-2d  ", j, i, (i * j));
            }
            System.out.println();
        }
        System.out.println("==============================================");
    }
}
实操 21~100 素数筛选与循环提前终止 (break 与 Math.sqrt 优化)PrimeSieveDemo.java
java
/**
 * 1~100 素数筛选与循环提前终止 (break 与 Math.sqrt 优化)
 * @author MatNoble
 */
public class PrimeSieveDemo {
    public static void main(String[] args) {
        System.out.println("1 ~ 100 之间的所有素数:");
        int count = 0;

        for (int num = 2; num <= 100; num++) {
            boolean isPrime = true;
            // 优化:只需检查到 sqrt(num)
            for (int i = 2; i <= Math.sqrt(num); i++) {
                if (num % i == 0) {
                    isPrime = false;
                    break; // 发现因子,立即提前跳出内层循环
                }
            }
            if (isPrime) {
                System.out.printf("%3d ", num);
                count++;
                if (count % 10 == 0) System.out.println();
            }
        }
        System.out.printf("\n共找到 %d 个素数。\n", count);
    }
}
实操 3控制台猜数字互动小游戏 (while 循环与二分查找体验)NumberGuessGame.java
java
import java.util.Random;
import java.util.Scanner;

/**
 * 随堂实操任务 5:控制台猜数字互动小游戏 (while 循环与二分查找体验)
 * @author MatNoble
 */
public class NumberGuessGame {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        Random random = new Random();
        int target = random.nextInt(100) + 1; // 1~100 随机数
        int attempts = 0;

        System.out.println("=========================================");
        System.out.println("       猜数字小游戏 (1 ~ 100)        ");
        System.out.println("=========================================");

        while (true) {
            System.out.print("请输入你猜测的数字: ");
            int guess = scanner.nextInt();
            attempts++;

            // ===== TODO: 【实操任务 3】请在此补全代码 =====
            // 提示: while 循环内部猜测比对与 break 退出逻辑
            // 
            // ============================================
        }
    }
}
bash — java NumberGuessGame (预期控制台输出)
=========================================
       猜数字小游戏 (1 ~ 100)        
=========================================
请输入你猜测的数字: 50
太大了!再小一点。
请输入你猜测的数字: 25
太小了!再大一点。
请输入你猜测的数字: 37
太小了!再大一点。
请输入你猜测的数字: 43
-----------------------------------------
恭喜你猜中了!目标数字就是: 43
总共尝试次数: 4 次
=========================================

最后更新于:

数学思维探究社微信公众号图标

不想公开提问?

关注公众号 数学思维探究社,后台发送“微积分+问题”,获取一对一解答。

数学思维探究社