java System.out.print输出问题

public static void main(String[] args){
int i,min,max;
int a[]={55,66,77,88,99,100};
min=max=a[0];
System.out.print("数组里a的元素包括: "); //这个地方空着,可是为什么会把数组里的元素都输出出来了呢?
for(i=0;i<a.length;i++){
System.out.print(a[i]+" ");
if(a[i]<min)
min=a[i];
if(a[i]>max)
max=a[i];
}
System.out.println("\n数组里的最大值是: "+max);
System.out.println("数组里的最小值是: "+min);
}

System.out.print(a[i]+" ");这句在循环里面当然会全部输出了追问

循环不是for吗?可上面的system在for外面啊

追答

System.out.print(a[i]+" ")你这句话就在for循环的里面,难道我是瞎了吗?

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-11-14
不明白你问的是什么,你这样的代码本来就会全部输出来啊。追问

那你帮我分析下输出的过程!自学 很多简单的地方不理解 谢谢了!

追答public static void main (String[] args) { //程序主进口
    int i, min, max; //定义3个变量:i, min, max;
    int a[] = { 55, 66, 77, 88, 99, 100 } //定义一个数组,包含6个变量
    min = max = a[0]; //让最小值和最大值都等于数组的最小值:55
    System.out.println ("数组里的元素包括:"); //打印括号里的字符串
    for (i = 0; i < a.length; i++) { //创建一个循环,循环次数为数组a的长度
        System.out.print (a[i] + ""); //打印当前数组下标为i的数字 ←
        if (a[i] < min) //如果这个数字小于最小值
            min = a[i]; //最小值等于这个数字
        if (a[i] > max) //如果这个数字大于最大值
            max = a[i]; //最大值等于这个数字
    } 
    System.out.println ("\n数组里的最大值是:" + max); //转行打印字符串和最大值
    System.out.println ("数组里的最大值是:" + min); //打印字符串和最小值
}

看我的箭头,你这句是在循环内部,也就是在循环进行一次后要重新再来,在循环体内部的代码当然要再被执行一次了。

本回答被提问者采纳
相似回答