我无法找到一种方法让我以一种看起来像
的方式重复xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx
import java.util.Scanner;
public class Square
{
public static void main (String [] args)
{
Scanner kb = new Scanner (System.in);
System.out.print("Enter a positive integer no greater than 15: ");
double square= kb.nextDouble();
double k=1;
String i= "";
while (k<square+1)
{
k++;
i=i+"X";
}
}
}
最终输出必须是方形类型形式中的字母X
,如果您为方形变量输入8,则其中8为8,向下为8。
我知道这样做的结果是错的,我只是不知道热,使它看起来像上面。
此输出类似于
x xx xxx xxxx xxxxx xxxxxx xxxxxxx xxxxxxxx
如果我使用8作为方形
答案 0 :(得分:0)
使用第二个循环。在第一个循环中构造一个字符串,并在第二个循环中重复打印。或者将一个循环嵌套在另一个循环中,并使用内部循环打印字符,使用外部循环打印字符。
答案 1 :(得分:0)
您遇到的问题是您正在运行while循环并在每次迭代时递增k的值,直到达到输入值。
这个问题是第一次迭代k对于第一次迭代将是1,这意味着它只会打印出1 X.下一次迭代它只打印2 X,再次因为你每次增加k 1时间。基于k的while循环。多数民众赞成你如何设置它。
你可以做到这一点的一种方法是使用2个嵌套循环。 如果输入= 8,
for(int i = 0; i<input; i++){
System.out.println(); // <----- This just jumps to next line
for(int k = 0; k<input; k++){
System.out.print("X");
}
}
输出
XXXXXXXX
XXXXXXXX
XXXXXXXX
XXXXXXXX
XXXXXXXX
XXXXXXXX