使用for循环输出由字符X组成的矩形

Using a for loop to output a rectangle made of character X

我很难理解 for 循环应该是什么样子。以下是所需的输出:

输入一个大于 10 的数字

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 X X X X X

我当前的代码是:

import java.util.*;//imports the utilities
public class RepeatAfterMe {
    public static void main(String[] args) {
        System.out.println("Enter a number ");//Prompt for input
        Scanner kb= new Scanner (System.in);
        int num =kb.nextInt();
        for (int x =0;x<num;x++){//repeats the word
            System.out.println("x");
        }
    }
}

以下 for 循环将打印您提供的输出。但是,我不确定这是不是你想要的

已编辑

    for (int i=0; i<num;i++){
        if (i==0 || i == num-1) {
            for (int j=0;j<num;j++){
                System.out.print("X");
            }
            System.out.println();
        }
        else {
            System.out.print("X");
            for (int j=1;j<num-1;j++){
                System.out.print(" ");
            }
            System.out.println("X");
        }
    }

此示例从控制台读取一个数字并打印所需的输出。

编辑:由于环境改变而更改了代码

import java.util.*;

public class Main {

public static void main(String... args) {
    Scanner scanner = new Scanner(System.in);
    int number = scanner.nextInt(); // Read the number from the console

    // First line
    for (int i = 0; i < number; i++)
        System.out.print("X");
    System.out.println();

    // Middle lines
    for (int i = 0; i < number - 2; i++) {
        System.out.print("X");
        for (int j = 0; j < number - 2; j++) {
            System.out.print(" ");
        }
        System.out.print("X\n");
    }

    // Last line
    for (int i = 0; i < number; i++)
        System.out.print("X");
    System.out.println();

    scanner.close();
}
}

试试这个,我已经在我这边测试过了。

for(int i=0;i<num;i++)
{
   for(int j=0;j<num;j++)
   {
    if(i==0 || i==num-1)
        System.out.print("X ");
    else
    {
        if(j==0 ||  j==num-1)
            System.out.print("X ");
        else
            System.out.print("  ");//two spaces to achieve your desired output
    }

  } 
    System.out.println();
    System.out.println();
}

输出

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 X X X X X