如何在java中使用嵌套for循环为矩形模式创建(m)列和(n)行?
今天我刚刚学会了如何使用嵌套循环,我需要做的任务非常简单,但我不能正确地执行它,尽管我有同样的想法 任务是输入一个字符,一个整数是行**n,另一个整数是列**m 它应该显示具有n行和m列的矩形图案 样本输入:如何在java中使用嵌套for循环为矩形模式创建(m)列和(n)行?,java,loops,for-loop,nested-loops,Java,Loops,For Loop,Nested Loops,今天我刚刚学会了如何使用嵌套循环,我需要做的任务非常简单,但我不能正确地执行它,尽管我有同样的想法 任务是输入一个字符,一个整数是行**n,另一个整数是列**m 它应该显示具有n行和m列的矩形图案 样本输入: * 3 2 这里的行数是3,列数是2 样本输出: ** ** ** 这只能使用嵌套for循环来完成 我的代码: 导入java.util.Scanner; 课例{ 公共静态无效主字符串[]args{ 扫描仪键盘=新的ScannerSystem.in; 字符串=键盘.next; int n
*
3
2
这里的行数是3,列数是2
样本输出:
**
**
**
这只能使用嵌套for循环来完成
我的代码:
导入java.util.Scanner;
课例{
公共静态无效主字符串[]args{
扫描仪键盘=新的ScannerSystem.in;
字符串=键盘.next;
int n=keyboard.nextInt;
int m=keyboard.nextInt;
对于int x=m;x,两个循环中都应从0开始,直到达到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("");
}
您应该为每一行使用这样的循环,从0开始到行,从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运行内部循环。 这种心态将有助于你在学习的同时循环
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("");
}
}
}
怎么会出错呢?你能显示出你得到的不正确的输出吗?看起来像是一个家庭作业问题,试着自己调试代码并找出原因。@nikoo28可能是这样,但至少OP试图解决这个问题。问题是每个循环的起始限制与退出限制相同。通常起始限制是is 0如果您使用的是变量,则应将其命名为有意义的+1!
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();
}
***
***
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("");
}
}
}