如何使用 java 中的嵌套 for 循环为矩形图案创建 (m) 列和 (n) 行?
How to create (m) columns and (n) rows for a rectangular pattern using nested for loops in java?
我今天刚学会使用嵌套循环,要求我做的任务很简单,但我无法正确执行它,尽管我的想法是一样的。
任务是输入一个字符,一个整数是行**(n),另一个整数是列**( m)
它应该显示 n 行 m 列的矩形图案
示例输入:
*
3
2
此处行数为3,列数为2
示例输出:
**
**
**
这只能使用嵌套 for 循环来完成
我的代码:
import java.util.Scanner;
class Example {
public static void main (String[] args) {
Scanner keyboard = new Scanner(System.in);
String character = keyboard.next();
int n = keyboard.nextInt();
int m = keyboard.nextInt();
for (int x = m; x <= m; x++) {
for (int y =n ; y <= n; y++) {
System.out.print(character);
}
System.out.println("");
}
}
}
我得到的输出:
*
您应该在两个循环中从 0
开始,直到达到 < m
和 < n
,如下所示:
Scanner keyboard = new Scanner(System.in);
String character = keyboard.next();
int n = keyboard.nextInt();
int m = keyboard.nextInt();
for (int x = 0; x < m; x++){
for (int y = 0; y < n; y++){
System.out.print(character);
}
System.out.println("");
}
样本 input/output 将是:
*
3
2
***
***
你应该使用这样的循环,从 0 开始到行,j 从 0 到列,每行,并在阅读后关闭扫描仪
public static void main(String[] arg) {
Scanner keyboard = new Scanner(System.in);
String character = keyboard.next();
int col = keyboard.nextInt();
int row = keyboard.nextInt();
for (int i = 0; i < row; i++) {
for (int j = 0; j < col; j++) {
System.out.print(character);
}
System.out.println("");
}
keyboard.close();
}
,输出
***
***
您的代码中的错误在于您是从 m 本身开始循环,而不是您应该考虑要 运行 循环多少次。
考虑到这一点,请尝试 运行 将代码从 0 调整到 m,将内部循环从 0 调整到 n。
这种心态也将帮助您学习 while 循环。
import java.util.Scanner;
class Example {
public static void main (String[] args)
{
Scanner keyboard = new Scanner(System.in);
String character = keyboard.next();
int n = keyboard.nextInt();
int m = keyboard.nextInt();
for (int x = 0;x<m;x++){
for (int y=0;y<n;y++){
System.out.print(character);
}
System.out.println("");
}
}
}
我今天刚学会使用嵌套循环,要求我做的任务很简单,但我无法正确执行它,尽管我的想法是一样的。
任务是输入一个字符,一个整数是行**(n),另一个整数是列**( m)
它应该显示 n 行 m 列的矩形图案
示例输入:
*
3
2
此处行数为3,列数为2
示例输出:
**
**
**
这只能使用嵌套 for 循环来完成
我的代码:
import java.util.Scanner;
class Example {
public static void main (String[] args) {
Scanner keyboard = new Scanner(System.in);
String character = keyboard.next();
int n = keyboard.nextInt();
int m = keyboard.nextInt();
for (int x = m; x <= m; x++) {
for (int y =n ; y <= n; y++) {
System.out.print(character);
}
System.out.println("");
}
}
}
我得到的输出:
*
您应该在两个循环中从 0
开始,直到达到 < m
和 < n
,如下所示:
Scanner keyboard = new Scanner(System.in);
String character = keyboard.next();
int n = keyboard.nextInt();
int m = keyboard.nextInt();
for (int x = 0; x < m; x++){
for (int y = 0; y < n; y++){
System.out.print(character);
}
System.out.println("");
}
样本 input/output 将是:
*
3
2
***
***
你应该使用这样的循环,从 0 开始到行,j 从 0 到列,每行,并在阅读后关闭扫描仪
public static void main(String[] arg) {
Scanner keyboard = new Scanner(System.in);
String character = keyboard.next();
int col = keyboard.nextInt();
int row = keyboard.nextInt();
for (int i = 0; i < row; i++) {
for (int j = 0; j < col; j++) {
System.out.print(character);
}
System.out.println("");
}
keyboard.close();
}
,输出
***
***
您的代码中的错误在于您是从 m 本身开始循环,而不是您应该考虑要 运行 循环多少次。 考虑到这一点,请尝试 运行 将代码从 0 调整到 m,将内部循环从 0 调整到 n。 这种心态也将帮助您学习 while 循环。
import java.util.Scanner;
class Example {
public static void main (String[] args)
{
Scanner keyboard = new Scanner(System.in);
String character = keyboard.next();
int n = keyboard.nextInt();
int m = keyboard.nextInt();
for (int x = 0;x<m;x++){
for (int y=0;y<n;y++){
System.out.print(character);
}
System.out.println("");
}
}
}