0
点赞
收藏
分享

微信扫一扫

「Java案例」输出24个希腊字母

今天来实现一个有趣的Java编程案例——输出24个希腊字母。

案例解析

输出24个希腊字母,利用Unicode码实现

编写程序,输出24个希腊字母,每行输出10个字母后换行。提示:在Unicode字符表中,希腊字母是从945开始的24个字符,可以使用(char)进行强制类型转换。

# 源文件保存为“GreekAlphabetPrinter.java”。
public class GreekAlphabetPrinter {
    public static void main(String[] args) {
        System.out.println("24个希腊字母:");
        // 每行输出10个字母
        int i = 945;
        for(int m= 0;m<24;m++) {
            System.out.print((char) (i+ m)+ " ");
            if ((m + 1) % 10 == 0) {
                System.out.println();
            }
        }
    }
}

运行结果

24个希腊字母: α β γ δ ε ζ η θ ι κ λ μ ν ξ ο π ρ ς σ τ υ φ χ ψ

代码解析

  • i=945是希腊字母α(alpha)的Unicode编码,后续字母编码是连续数字(α=945, β=946...ω=969),循环通过i+m实现编码递增。
  • (char)(i+m)是代码精髓:把数字强制转换为对应的Unicode字符。
  • (m+1)%10==0在打印第10/20个字母时换行。

输出24个希腊字母,利用数组实现

编写程序,输出24个希腊字母,每行输出10个字母后换行。提示:利用数组保存24个希腊字符。

# 源文件保存为“GreekAlphabetPrinter.java”。
public class GreekAlphabetPrinter {
    public static void main(String[] args) {
        // 定义希腊字母数组
        char[] greekLetters = {
            'α', 'β', 'γ', 'δ', 'ε', 'ζ', 'η', 'θ', 'ι', 'κ', 
            'λ', 'μ', 'ν', 'ξ', 'ο', 'π', 'ρ', 'σ', 'τ', 'υ',
            'φ', 'χ', 'ψ', 'ω'
        };
        
        System.out.println("24个希腊字母:");
        
        // 每行输出10个字母
        for (int i = 0; i < greekLetters.length; i++) {
            System.out.print(greekLetters[i] + " ");
            
            // 每输出10个字母换行
            if ((i + 1) % 10 == 0) {
                System.out.println();
            }
        }
    }
}

运行结果

24个希腊字母: α β γ δ ε ζ η θ ι κ λ μ ν ξ ο π ρ σ τ υ φ χ ψ ω

代码解析

  • 定义了一个字符数组greekLetters,存储24个希腊字母。
  • 使用for循环遍历数组中的每个字母。
  • System.out.print不换行打印当前字母。
  • 利用(i + 1) % 10 == 0判断是否已经输出10个字母.
  • 当计数器i+1能被10整除时,执行System.out.println()输出换行符。
  • 最终输出效果是每行10个字母,共3行(最后一行4个字母)

带编号的希腊字母输出

编写程序,给每个希腊字母加上编号,格式为"1.α 2.β ..."。

# 源文件保存为“NumberedGreekLetters.java”。
public class NumberedGreekLetters {
    public static void main(String[] args) {
        char[] greekLetters = {
            'α', 'β', 'γ', 'δ', 'ε', 'ζ', 'η', 'θ', 'ι', 'κ',
            'λ', 'μ', 'ν', 'ξ', 'ο', 'π', 'ρ', 'σ', 'τ', 'υ',
            'φ', 'χ', 'ψ', 'ω'
        };
        
        System.out.println("带编号的希腊字母:");
        
        for (int i = 0; i < greekLetters.length; i++) {
            // 格式化输出编号和字母
            System.out.printf("%2d.%s ", i + 1, greekLetters[i]);
            
            // 每行5组数据
            if ((i + 1) % 5 == 0) {
                System.out.println();
            }
        }
    }
}

运行结果 带编号的希腊字母:

1.α 2.β 3.γ 4.δ 5.ε 6.ζ 7.η 8.θ 9.ι 10.κ 11.λ 12.μ 13.ν 14.ξ 15.ο 16.π 17.ρ 18.σ 19.τ 20.υ 21.φ 22.χ 23.ψ 24.ω

代码解析

  • 仍然使用字符数组存储希腊字母。
  • System.out.printf格式化输出,%2d表示2位宽的整数编号。
  • 每行输出5组编号和字母。
  • (i + 1) % 5 == 0判断是否已经输出5组数据。
  • 输出效果更整齐,便于查看。

输出英文字母表

编写程序,使用类似的方法输出26个英文字母。

# 源文件保存为“EnglishAlphabet.java”。
public class EnglishAlphabet {
    public static void main(String[] args) {
        // 输出小写字母
        System.out.println("小写英文字母:");
        for (char c = 'a'; c <= 'z'; c++) {
            System.out.print(c + " ");
            if ((c - 'a' + 1) % 10 == 0) {
                System.out.println();
            }
        }
        
        // 输出大写字母
        System.out.println("\n\n大写英文字母:");
        for (char c = 'A'; c <= 'Z'; c++) {
            System.out.print(c + " ");
            if ((c - 'A' + 1) % 10 == 0) {
                System.out.println();
            }
        }
    }
}

运行结果

小写英文字母: a b c d e f g h i j k l m n o p q r s t u v w x y z

大写英文字母: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

代码解析

  • 利用字符可以直接递增的特性
  • c - 'a' + 1计算当前字母的位置
  • 同样每行输出10个字母
  • 分别输出小写和大写字母表

输出特殊符号

编写程序,输出一组常用的数学符号。

# 源文件保存为“MathSymbols.java”。
public class MathSymbols {
    public static void main(String[] args) {
        String[] symbols = {
            "≠", "≈", "≡", "≤", "≥", "±", "×", "÷", "√", "∞",
            "∫", "∑", "∏", "∂", "∆", "∇", "∈", "∉", "∩", "∪",
            "∴", "∵", "∅", "∎"
        };
        
        System.out.println("常用数学符号:");
        
        for (int i = 0; i < symbols.length; i++) {
            System.out.print(symbols[i] + " ");
            if ((i + 1) % 8 == 0) {
                System.out.println();
            }
        }
    }
}

运行结果 常用数学符号:

≠ ≈ ≡ ≤ ≥ ± × ÷ √ ∞ ∫ ∑ ∏ ∂ ∆ ∇ ∈ ∉ ∩ ∪ ∴ ∵ ∅ ∎

代码解析

  • 使用字符串数组存储特殊符号
  • 每行输出8个符号
  • 展示了如何处理Unicode特殊字符
  • 输出效果整齐美观

字母金字塔

编写程序,用希腊字母构建金字塔图案:

# 源文件保存为“GreekPyramid.java”。
public class GreekPyramid {
    public static void main(String[] args) {
        char[] letters = {'α', 'β', 'γ', 'δ', 'ε', 'ζ', 'η', 'θ', 'ι'};
        
        for (int i = 0; i < 5; i++) {
            // 打印空格
            for (int j = 0; j < 5 - i - 1; j++) {
                System.out.print("  ");
            }
            
            // 打印字母
            for (int k = 0; k < 2 * i + 1; k++) {
                System.out.print(letters[i] + " ");
            }
            
            System.out.println();
        }
    }
}

运行结果

    α 
  β β β 
γ γ γ γ γ 

δ δ δ δ δ δ δ ε ε ε ε ε ε ε ε ε

代码解析

  • 外层循环控制金字塔层数
  • 第一个内层循环控制空格输出
  • 第二个内层循环控制字母输出
  • 构建出金字塔形状的字母图案
  • 展示了循环嵌套的应用

实践练习题

练习:交替输出大小写希腊字母

希腊字母也有大写形式,编写程序,交替输出大小写

# 源文件保存为“UpperLowerGreek.java”。
public class UpperLowerGreek {
    public static void main(String[] args) {
        char[] lowerGreek = {
            'α', 'β', 'γ', 'δ', 'ε', 'ζ', 'η', 'θ', 'ι', 'κ',
            'λ', 'μ', 'ν', 'ξ', 'ο', 'π', 'ρ', 'σ', 'τ', 'υ',
            'φ', 'χ', 'ψ', 'ω'
        };
        
        char[] upperGreek = {
            'Α', 'Β', 'Γ', 'Δ', 'Ε', 'Ζ', 'Η', 'Θ', 'Ι', 'Κ',
            'Λ', 'Μ', 'Ν', 'Ξ', 'Ο', 'Π', 'Ρ', 'Σ', 'Τ', 'Υ',
            'Φ', 'Χ', 'Ψ', 'Ω'
        };
        
        System.out.println("交替大小写希腊字母:");
        
        for (int i = 0; i < lowerGreek.length; i++) {
            if (i % 2 == 0) {
                System.out.print(lowerGreek[i] + " ");
            } else {
                System.out.print(upperGreek[i] + " ");
            }
            
            if ((i + 1) % 10 == 0) {
                System.out.println();
            }
        }
    }
}

运行结果

交替大小写希腊字母: α Β γ Δ ε Ζ η Θ ι Κ λ Μ ν Ξ ο Π ρ Σ τ Υ φ Χ ψ Ω

代码解析

  • 定义了两个数组分别存储大小写希腊字母
  • 使用i % 2 == 0判断奇偶位置
  • 偶数位置输出小写,奇数位置输出大写
  • 仍然保持每行10个字母的格式

练习:希腊字母与英文名称对照

编写程序,输出希腊字母及其英文名称。

# 源文件保存为“GreekWithNames.java”。
public class GreekWithNames {
    public static void main(String[] args) {
        String[][] greekWithNames = {
            {"α", "alpha"}, {"β", "beta"}, {"γ", "gamma"}, {"δ", "delta"},
            {"ε", "epsilon"}, {"ζ", "zeta"}, {"η", "eta"}, {"θ", "theta"},
            {"ι", "iota"}, {"κ", "kappa"}, {"λ", "lambda"}, {"μ", "mu"},
            {"ν", "nu"}, {"ξ", "xi"}, {"ο", "omicron"}, {"π", "pi"},
            {"ρ", "rho"}, {"σ", "sigma"}, {"τ", "tau"}, {"υ", "upsilon"},
            {"φ", "phi"}, {"χ", "chi"}, {"ψ", "psi"}, {"ω", "omega"}
        };
        
        System.out.println("希腊字母与英文名称对照:");
        
        for (int i = 0; i < greekWithNames.length; i++) {
            System.out.printf("%s (%s)\t", 
                greekWithNames[i][0], greekWithNames[i][1]);
            
            if ((i + 1) % 3 == 0) {
                System.out.println();
            }
        }
    }
}

运行结果

希腊字母与英文名称对照: α (alpha) β (beta) γ (gamma) δ (delta) ε (epsilon) ζ (zeta) η (eta) θ (theta) ι (iota) κ (kappa) λ (lambda) μ (mu) ν (nu) ξ (xi) ο (omicron) π (pi) ρ (rho) σ (sigma) τ (tau) υ (upsilon) φ (phi) χ (chi) ψ (psi) ω (omega)

代码解析

  • 使用二维数组存储字母和对应的英文名称
  • System.out.printf格式化输出字母和名称
  • 每行输出3组数据
  • 输出效果清晰易读

练习:用户自定义输出格式

编写程序,让用户选择每行输出多少个字母。

# 源文件保存为“CustomGreekPrinter.java”。
import java.util.Scanner;

public class CustomGreekPrinter {
    public static void main(String[] args) {
        char[] greekLetters = {
            'α', 'β', 'γ', 'δ', 'ε', 'ζ', 'η', 'θ', 'ι', 'κ',
            'λ', 'μ', 'ν', 'ξ', 'ο', 'π', 'ρ', 'σ', 'τ', 'υ',
            'φ', 'χ', 'ψ', 'ω'
        };
        
        Scanner scanner = new Scanner(System.in);
        System.out.print("请输入每行要输出的字母数量:");
        int perLine = scanner.nextInt();
        
        System.out.println("希腊字母输出:");
        
        for (int i = 0; i < greekLetters.length; i++) {
            System.out.print(greekLetters[i] + " ");
            
            if ((i + 1) % perLine == 0) {
                System.out.println();
            }
        }
        
        scanner.close();
    }
}

运行结果 运行程序,输入8,会得到:

请输入每行要输出的字母数量:8 希腊字母输出: α β γ δ ε ζ η θ ι κ λ μ ν ξ ο π ρ σ τ υ φ χ ψ ω

代码解析

  • 使用Scanner获取用户输入的每行字母数
  • 根据用户输入的值数控制换行时间
举报

相关推荐

0 条评论