我有三个Java代码,其中涉及使用for循环打印不同的数字集。它们起作用,但是,我实际上不知道它们为什么起作用。有人可以帮忙吗?
第一个(在Main1下面)打印从23到89的数字,每行10个数字,每个数字之间有一个空格。
import java.util.Scanner;
import java.lang.Math;
class Main1 {
public static void main(String[] args)
{
for (int i = 23; i < 90; ++i) {
System.out.print(i);
char c;
if (i % 10 == 2) { c = '\n'; }
else { c = ' '; }
System.out.print(c);
}
}
}
第二个(位于Main2下面)让用户输入一个介于0和100之间的整数,每行二十个数字。如果该数字不在零和一百之间,则会显示“错误”。
import java.util.Scanner;
import java.lang.Math;
class Main2 {
public static void main(String[] args)
{
Scanner scan = new Scanner(System.in);
System.out.println("Enter a number between 0 and 100:");
int x = scan.nextInt();
if(x > 0 || x < 100){
for(int a = x; a < 101; a++){
System.out.println(a);
}
}
if(x < 0 || x > 100)System.out.println("error");
}
}
第三个数字(也是下面的Main3类)仅打印从1到50的偶数,每行打印一个。
import java.util.Scanner;
import java.lang.Math;
class Main3 {
public static void main(String[] args)
{
for(int i = 2; i <= 50; i++)
{
if (i%2 == 0)
System.out.println(i);
}
}
}
所有这些工作都应该按照预期进行,但我不确定如何。谢谢!
答案 0 :(得分:1)
在您的第一个Java代码中,
这将打印数字23到33
for (int i = 23; i < 90; ++i) {
System.out.print(i);
直到您有条件
if (i % 10 == 2) {
c = '\n';
}
else {
c = ' ';
}
System.out.print(c);
如果i被10整除并且余数为2,则c的值为\ n 其他 c将具有“”的值。
在第二个代码中,
您将输入1到100之间的数字,然后输入代码
if(x > 0 || x < 100)
将检查数字是否在0到100之间,如果条件为真,则会循环执行
for(int a = x; a < 101; a++){
System.out.println(a);
}
此循环将从您输入的数字开始打印,直到100。 然后这段代码,
if(x < 0 || x > 100)System.out.println("error");
将检查您输入的数字是否为0以下,100以上;
您的第三个代码,这是for循环
for(int i = 2; i <= 50; i++)
将从2循环到50
但您的条件是
if (i%2 == 0)
System.out.println(i);
}
这意味着i可以被二整除,它将打印i。
希望您能理解我的所有解释。