Java程序打印X星形图案


在这篇文章中,我们将了解如何使用Java打印X星形图案。该图案是通过使用多个for循环打印语句形成的。

该图案通过在特定位置打印星号('X')和空格来形成字母“X”的形状。用户可以提供一个数字作为输入,该数字将确定图案的大小。该程序使用嵌套循环创建所需的星形图案,其中星号放置在网格的对角线上。

问题陈述

编写一个Java程序来打印X星形图案。下面是相同的演示:−

输入

Enter the number : 8

输出

The X star pattern : 
X              X 
 X            X  
  X          X   
   X        X    
    X      X     
     X    X      
      X  X       
       X        
      X  X       
     X    X      
    X      X     
   X        X    
  X          X   
 X            X  
X              X

不同的方法

以下是打印X星形图案的不同方法−

使用用户输入

以下是使用用户输入打印X星形图案的步骤−

  • 使用Scanner类导入java.util包
  • 声明变量ijkmy_input
  • 创建一个Scanner对象以接收用户输入。
  • 提示用户输入一个数字并将其存储在my_input中。
  • 计算k为my_input * 2 - 1以确定网格大小。
  • 使用嵌套循环在对角线位置打印星号('X'),在其他位置打印空格。
  • 完成每一行后,打印一个换行符以移至下一行。
  • 显示最终的“X”星形图案。

示例

这里,输入是根据提示由用户输入的−

import java.util.Scanner;
public class XStar{
   public static void main(String []args){
      int i, j, k, my_input;
      System.out.println("Required packages have been imported");
      Scanner my_scanner = new Scanner(System.in);
      System.out.println("A reader object has been defined ");
      System.out.print("Enter the number : ");
      my_input = my_scanner.nextInt();
      System.out.print("The X star pattern : ");
      k=my_input*2-1;
      for( i=1;i<=k;i++){
         for( j=1;j<=k;j++){
            if(j==i || j==k-i+1)
               System.out.print("X");
               System.out.print(" ");
         }
         System.out.println();
       }
    }
}	

输出

Required packages have been imported
A reader object has been defined 
Enter the number : 8
The X star pattern : 
X              X 
 X            X  
  X          X   
   X        X    
    X      X     
     X    X      
      X  X       
       X        
      X  X       
     X    X      
    X      X     
   X        X    
  X          X   
 X            X  
X              X

使用预定义输入

以下是使用预定义输入打印X星形图案的步骤−

  • 声明变量ijkmy_input
  • 预定义my_input的值为8
  • 打印一条消息,显示已定义的行数。
  • 使用公式my_input * 2 - 1计算k。
  • 使用嵌套循环在对角线位置打印星号('X'),在其他位置打印空格。
  • 完成每一行后,打印一个换行符以移至下一行。
  • 显示最终的“X”星形图案。

示例

这里,整数已事先定义,其值在控制台上被访问和显示−

public class XStar{
public static void main(String[] args) {
   int i, j, k, my_input;
   my_input = 8;
   System.out.println("The number of rows is defined as " + my_input);
   System.out.print("The X star pattern : \n");   
   k = my_input * 2 - 1;   
   for (i = 1; i <= k; i++) {
      for (j = 1; j <= k; j++) {
         if (j == i || j == k - i + 1)
            System.out.print("X");
         System.out.print(" ");
      }
      System.out.println();
   }
  }
}

输出

The number of rows is defined as 8
The X star pattern : 
X              X 
 X            X  
  X          X   
   X        X    
    X      X     
     X    X      
      X  X       
       X        
      X  X       
     X    X      
    X      X     
   X        X    
  X          X   
 X            X  
X              X 

更新于: 2024年10月15日

10K+ 浏览量

开启你的职业生涯

通过完成课程获得认证

开始学习
广告

© . All rights reserved.