Java-打印X^X^X正方形
我有一个任务要做,我的任务是打印X^X的X个正方形。例如,输入“3”的正确输出是下图 此处示例:Java-打印X^X^X正方形,java,loops,Java,Loops,我有一个任务要做,我的任务是打印X^X的X个正方形。例如,输入“3”的正确输出是下图 此处示例: 我的代码: Scanner s=新的扫描仪(System.in); int基,k=0; System.out.println(“输入一个数字并绘制一些正方形”); base=s.nextInt(); int bb=基准*基准; 对于(int t=0;t您可以使用模运算符(%)拾取每一个第n行。扫描仪s=新扫描仪(System.in); Scanner s = new Scanner (System
我的代码:
Scanner s=新的扫描仪(System.in);
int基,k=0;
System.out.println(“输入一个数字并绘制一些正方形”);
base=s.nextInt();
int bb=基准*基准;
对于(int t=0;t您可以使用模运算符(%
)拾取每一个第n行。扫描仪s=新扫描仪(System.in);
Scanner s = new Scanner (System.in);
int base, k=0;
System.out.println("Enter a number do draw some squares");
base = s.nextInt();
int bb = base*base;
for (int t=0; t<=bb; t++) {
if (t<bb) {
if(t%base == 0) {
System.out.println();
}
for (int i=0; i<base; i++) {
for (k=0; k<=base; k++) {
if (k<base)
System.out.print("*");
else
System.out.print(" ");
}
}
}
System.out.println();
}
int基,k=0;
System.out.println(“输入一个数字并绘制一些正方形”);
base=s.nextInt();
int bb=基准*基准;
对于(int t=0;t当循环计数器可被基数整除时,即当循环计数器%base=0时,需要更改输出
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
System.out.print("Enter a number do draw some squares: ");
int base = s.nextInt();
int bb = base * base;
for (int i = 1; i <= bb; i++) {
for (int j = 1; j <= bb; j++) {
System.out.print(j % base == 0 ? "* " : "*");
}
System.out.println(i % base == 0 ? System.lineSeparator() : "");
}
}
}
我会使用4个嵌套循环:
静态空白打印方块(int n){
对于(int-boxRow=0;boxRow
打印方块的输出(2)
***
** **
** **
** **
打印方块的输出(3)
******
*** *** ***
*** *** ***
*** *** ***
*** *** ***
*** *** ***
*** *** ***
*** *** ***
*** *** ***
@ppawel这是正确的,我添加了一个答案,因为我是在ideone中做的“\n”
应该是,否则您将在Windows上的某些行末尾得到\n\r\n
,即混合行分隔符。或者如果(I%base==0)System.out.println();
。我认为这段代码比其他答案中的代码更简洁,因为它只使用了两个循环,而不是三个或多个循环,而且更紧凑,可读性更好。这是一个很好的解决方案,但是您从哪里得到了“n”的输入我想我还是没学会method@Kapaznik哦,对不起,您还没有了解方法?您很快就会了解的。n
是一个方法参数,它将具有问题代码在base
中的值。您可以将n
重命名为base
,然后删除此处显示的第一行和最后一行。很高兴知道,当我们使用这种方法你不需要使用“扫描器”来获取输入?@Kapaznik如果你想提示用户,你可以这样做。但是还有其他方法来计算数字,例如,你可以硬编码,如下面的答案所示:printSquares(2)
是对方法的调用,设置n=2
。尝试添加System.out.println();
在k
for循环之后
Enter a number do draw some squares: 3
*** *** ***
*** *** ***
*** *** ***
*** *** ***
*** *** ***
*** *** ***
*** *** ***
*** *** ***
*** *** ***