
求高手帮我解释一个程序!急。
importjavax.swing.JOptionPane;publicclassArrange{publicstaticvoidmain(Stringargs[]){S...
import javax.swing.JOptionPane;
public class Arrange{
public static void main (String args[]){
String str;
int x,y,z;
int temp;
str=JOptionPane.showInputDialog("请输入第一个数");
x=Integer.parseInt (str);
str=JOptionPane.showInputDialog("请输入第二个数");
y=Integer.parseInt (str);
str=JOptionPane.showInputDialog("请输入第三个数");
z=Integer.parseInt (str);
if(x>y) {
temp = y;
y = x;
x = temp;
}
if(y>z){
temp = y;
y = z;
z = temp;
}
if(x>y){
temp = y;
y = x;
x = temp;
}
System.out.println("从小到大排列="+x+" "+y+" "+z);
}
}
第一个语句的IF和最一个语句的IF他们的语块和条件都一样,他们有区别吗,我把最后一个IF去掉了,程序结果就是不原来的程序结果了,为什么?还有TEMP是什么变量,谁能帮我解释一下IF语句中的每一层意,越清晰越好!我初学.麻烦了!
这是用JAVA写的程序,虽然第一个IF和最后一个IF都一样,但是他们是不能少的,少了就会出错,我试过! 展开
public class Arrange{
public static void main (String args[]){
String str;
int x,y,z;
int temp;
str=JOptionPane.showInputDialog("请输入第一个数");
x=Integer.parseInt (str);
str=JOptionPane.showInputDialog("请输入第二个数");
y=Integer.parseInt (str);
str=JOptionPane.showInputDialog("请输入第三个数");
z=Integer.parseInt (str);
if(x>y) {
temp = y;
y = x;
x = temp;
}
if(y>z){
temp = y;
y = z;
z = temp;
}
if(x>y){
temp = y;
y = x;
x = temp;
}
System.out.println("从小到大排列="+x+" "+y+" "+z);
}
}
第一个语句的IF和最一个语句的IF他们的语块和条件都一样,他们有区别吗,我把最后一个IF去掉了,程序结果就是不原来的程序结果了,为什么?还有TEMP是什么变量,谁能帮我解释一下IF语句中的每一层意,越清晰越好!我初学.麻烦了!
这是用JAVA写的程序,虽然第一个IF和最后一个IF都一样,但是他们是不能少的,少了就会出错,我试过! 展开
1个回答
展开全部
最后一个IF应该是x>z吧~
temp是个中间参数....这就是冒泡法...通过俩俩之间的比较,把你需要的大的数(或小的数)移到前面,这样就起到了排序的作用
其实那三个IF的意思都是一样的..
就是通过比较把俩个数的位置对掉
temp是个中间参数....这就是冒泡法...通过俩俩之间的比较,把你需要的大的数(或小的数)移到前面,这样就起到了排序的作用
其实那三个IF的意思都是一样的..
就是通过比较把俩个数的位置对掉
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询