这道java题为什么是降序输出,有什么方法能让它升序输出吗?

来源:百度知道 编辑:UC知道 时间:2024/06/22 19:17:15
class Ex6
{
public static void main(String [] args)
{
int i;
int x[]=new int[6];
for (i=0;i<6;i++)
{
x[i]=i;
}
for(i=x.length-1;i>=0;i++)
System.out.println("x["+i+"]="+x[i]);
}
还有,我看不懂执行顺序,能说明下吗?
改成i--好像报错

修改后的源程序如下:
class Ex6 {
public static void main(String[] args) {
int i;
int x[] = new int[6];
for (i = 0; i < 6; i++) {
x[i] = i;
}
for (i = x.length - 1; i >= 0; i--)
System.out.println("x[" + i + "]=" + x[i]);
}
}
在你的源程序的基础上,做两点改动:
1、把i++改成i--,这是必然的,不然怎么能逆序输出呢!而且这么修改时不会报错的!
2、结尾少一个括号}。

你的问题解答:
你是从索引值为length-1开始输出数组中的元素,所以输出的是逆序。还有,这不存在什么升序输出还是降序输出,只能说是逆序输出,就是把数组倒过来输出。

程序执行顺序:
Java应用程序总是从main()主方法开始执行,就你这题而言:首先是声明一个变量i和数组x[i],然后利用for循环对数组中的元素赋值,最后又是用for循环输出数组中的元素到控制台。

这样:
升序:
class Test
{
public static void main(String [] args)
{
int i;
int x[]=new int[6];

for (i=0;i<6;i++)
{
x[i]=i;
System.out.print("x["+i+"]="+x[i]+" ");
}

}
}

你的降序也不对:
class Test
{
public static void main(Str