所以我试图将这个小程序作为课堂练习,老实说,我无法弄清楚为什么x的值不断替换w。有人可以向我解释为什么会这样。我知道ASCII-w的值比x小,所以我真的不明白 import java.util。*;
public class SmallestIntMod
{
public static void main(String [] args)
{
Scanner scan = new Scanner(System.in);
System.out.println("Enter a value for w: ");
int w = scan.nextInt();
int smallest = w;
System.out.println("Enter a value for x: ");
int x = scan.nextInt();
if (x < smallest);
{
smallest = x;
}
System.out.println("Enter a value for y: ");
int y = scan.nextInt();
if (y < smallest)
{
smallest = y;
}
System.out.println("Enter a value for z: ");
int z = scan.nextInt();
if (z < smallest)
{
smallest = z;
}
System.out.println("The smallest value is: " + smallest);
}
}
答案 0 :(得分:2)
删除;
:
if (x < smallest);
^
{
smallest = x;
}
分号结束if语句,因此无论x
和smallest
的值如何,每次都会执行以下块。