关于for循环的问题
我是初学者,对于我提的问题大家不要笑我,哈哈。
以下是用JAVA对一个数组进行排序
import java.util.*;
public class p70_5
{
public static void main(String[] args)
{
int[] x=new int[8];
int i,j,k,temp;
Random a=new Random();
for(i=0;i<8;i++)
{
x[i]=a.nextInt(100);
}
for(i=0;i<8;i++)
{
System.out.print(x[i]+"\t");
}
System.out.print("\n");
for(i=0,k=i;i<7;i++) //(1)在for循环内放进k=i,答案是错的。
{
k=i;//(2)只有把k=i放出来答案才是正确的。
for(j=i+1;j<8;j++)
{
if(x[j]<x[k])
{
k=j;
}
}
if(k!=i)
{
temp=x[i];
x[i]=x[k];
x[k]=temp;
}
}
for(i=0;i<8;i++)
{
System.out.print(x[i]+"\t");
}
}
}
在以上(1)(2)注释内有我的问题,请问大家这是为什么?
[解决办法]
for(int i=0;i<10;i++)只有三项
第一项是初始化循环变量
第二项是判断循环条件
第三项更新循环变量