我正在用java编写一个程序,它可以打印从1到x的数字(x是用户输入值)。这是使用for循环和方法语句
这是使用for循环和方法语句我正在用java编写一个程序,它可以打印从1到x的数字(x是用户输入值)。这是使用for循环和方法语句,java,Java,这是使用for循环和方法语句 `import java.util.Scanner; class MethodLoop{ public static void main(String [] args){ Scanner s = new Scanner (System.in); System.out.println("Enter a number: "); int x= s.nextInt();
`import java.util.Scanner;
class MethodLoop{
public static void main(String [] args){
Scanner s = new Scanner (System.in);
System.out.println("Enter a number: ");
int x= s.nextInt();
}
public static void print (int y){
for(int y=1;y<x;x++){
System.out.println(y);
}
}
}`
导入java.util.Scanner;
类方法循环{
公共静态void main(字符串[]args){
扫描仪s=新的扫描仪(System.in);
System.out.println(“输入一个数字:”);
int x=s.nextInt();
}
公共静态无效打印(整数y){
对于(inty=1;y将
publicstaticvoidprint(inty){
更改为publicstaticvoidprint(intx){
,然后从main调用它
编辑
yes还将循环更改为
y++
将公共静态无效打印(inty){
更改为公共静态无效打印(intx){
,然后从main调用它
编辑
是,也可以将循环更改为
y++
也许您希望在打印方法中通过x,而不是通过y。
此外,您应该在for循环中增加y,而不是x。也许您希望在打印方法中通过x,而不是y。
另外,您应该在for循环中增加y,而不是x。您不能从另一个块访问局部变量。您可以尝试添加x作为参数并从main方法调用print方法。您不能从另一个块访问局部变量。您可以尝试添加x作为参数并从main方法调用print方法。 正如Logan在评论中所说,您的问题是
print
方法不“知道”x
变量。您需要做的是将参数中的变量(括号中的内容)交给该方法。因此将其更改为public static void print(int x)
将x
变量移动到您的方法。然后,在for
循环中增加x,您需要通过将x++
更改为y++
来增加y
最后,您需要将
print(x)
放在主方法的底部,告诉您的程序使用该方法。正如Logan在评论中所说,您的问题是print
方法不“知道”x
变量。您需要做的是将参数中的变量(括号中的内容)交给该方法。因此,将其更改为publicstaticvoidprint(intx)
,将x
变量交给您的方法。然后,您将递增(递增)在for
循环中,您需要通过将x++
更改为y++
来增加y
最后,您需要将
print(x)
放在主方法的底部,告诉您的程序使用该方法。您的程序中有一些错误。您试图使用变量x
,但它在函数print(int)的范围内不可见
因为它既不是全局的,也不是作为参数传递的
接下来,您可能想将x
作为参数传递给print
函数,而不是y
,以便将其用作循环中的限制
最后,您将y
声明为循环变量,但您正在增加x
。此代码可以在无限循环中轻松完成。您可能希望增加y
。现在可以从main
调用函数了
以下是您可能已经想到的(可能的)解决方案:
import java.util.Scanner;
class MethodLoop{
public static void main(String [] args){
Scanner s = new Scanner (System.in);
System.out.println("Enter a number: ");
int x= s.nextInt();
print(x);
}
public static void print (int x){
for(int y=1;y<x;y++){
System.out.println(y);
}
}}
import java.util.Scanner;
类方法循环{
公共静态void main(字符串[]args){
扫描仪s=新的扫描仪(System.in);
System.out.println(“输入一个数字:”);
int x=s.nextInt();
印刷品(x);
}
公共静态无效打印(int x){
对于(int y=1;y您的程序中有一些错误。您试图使用变量x
,但它在函数范围print(int)
中不可见,因为它既不是全局变量,也不是作为参数传递的
接下来,您可能想将x
作为参数传递给print
函数,而不是y
,以便将其用作循环中的限制
最后,您将y
声明为循环变量,但您正在增加x
。此代码可以在无限循环中轻松完成。您可能希望增加y
。现在可以从main
调用函数了
以下是您可能已经想到的(可能的)解决方案:
import java.util.Scanner;
class MethodLoop{
public static void main(String [] args){
Scanner s = new Scanner (System.in);
System.out.println("Enter a number: ");
int x= s.nextInt();
print(x);
}
public static void print (int x){
for(int y=1;y<x;y++){
System.out.println(y);
}
}}
import java.util.Scanner;
类方法循环{
公共静态void main(字符串[]args){
扫描仪s=新的扫描仪(System.in);
System.out.println(“输入一个数字:”);
int x=s.nextInt();
印刷品(x);
}
公共静态无效打印(int x){
对于(int y=1;y您应该在print()中运行for循环,条件是y您应该在print()中运行for循环方法使用条件<代码> y,请清楚地编辑您的问题。例如:考虑使用更短、更简洁的标题,解释代码片段的上下文,列出您正在接收的错误。1和X之间的数字不打印。没有显示错误。它所要求的是数字,这是请编辑Y。例如:考虑使用更短、更简洁的标题,解释代码片段的上下文,列出您正在接收的错误。1和X之间的数字不打印。没有显示错误。它所要求的是数字,即IITT不打印1和XIT之间的数字不是PR。在类中输入介于1和xIs之间的数字是您的代码吗?在您提供的代码上方是否有类似于public class myProgram{
的行?顶部应该有import java.util.Scanner;
@BobetJohn这应该只是一个片段,但好的,我也添加了导入。感谢您的支持