为什么没有最后两行代码不能输出

为什么不输入最后两行代码会出现输出乱码的情况?最后两行代码的意思是什么,或者这个循环改怎么用?
import java.util.Scanner;public class max { public static void main(String[] args) { int[] a =new int [10]; Scanner sc = new Scanner(System.in); System.out.print("请输入10个整数"); for(int i=0;i<10;i++) a[i] = sc.nextInt(); int max_i=0; int max=a[0]; int min=a[0]; int min_i=0; for(int i=1;i<10;i++) { if(a[i]>max) { max = a[i]; max_i = i; } if(a[i]<min) { min = a[i]; min_i = i; } } int temp; temp = a[min_i]; a[min_i]=a[max_i]; a[max_i]=temp; System.out.println("输出新数组:"); for(int i=0;i<10;i++) System.out.print(" "+a[i]); }}

最后两行是遍历输出数组内容。

不可能不输入的,你遍历10次循环输入,如果直接回车他会一直等到的输入有效数字位置,如果你敢输入其他类型 直接抛异常终止程序,你的程序无非就是定义一个长度为10的数组,然后输入赋值,通过遍历找出最大值和最小值,然后进行换位置,再将结果输出,不过如果你出现乱码,那一定是中文乱码,编辑器改一下编码格式即可

最后两行是print,你不调用print输出个鬼

乱码应该是你没设置编码的问题,最后两行是循环打印你之前从键盘输入存入到数组的内容

输出有两种方式,一种是遍历输出 一种是 Arrays.toString()

看代码意思是想做一个随机从控制台输入10个数,然后对这10个数进行降序排, 但是这个方法不能实现降序排列喔

import java.util.Scanner;
public class max {
    /**
     * 看代码意思是想做一个随机从控制台输入10个数,然后对这10个数进行降序排列
     * 但是这个方法不能实现降序排列喔
     */
    public static void main(String[] args) {
        // 定义一个数组a,初始化数组大小为10,
        int[] a = new int[10];
        // 控制台输入
        Scanner sc = new Scanner(System.in);
        System.out.print("请输入10个整数");
        // 次循环表示控制台输入10个数,输完一个按Enter键,接着再输入下一个
        for (int i = 0; i < 10; i++) {
            // 接收控制台输入的数字,
            a[i] = sc.nextInt();
        }
        // 最大值的索引为0
        int max_i = 0;
        // 假设最大值是数组中第一个
        int max = a[0];
        // 假设最小值是数组中第一个
        int min = a[0];
        // 最小值的下标索引为0
        int min_i = 0;
        //
        for (int i = 1; i < 10; i++) {
            // 数组从第二个数与第一个数开始比较,第二个比第一个大就交换位置
            if (a[i] > max) {
                max = a[i];
                max_i = i;
            }
            // 数组从第二个数与第一个数开始比较,第二个比第一个小就交换位置
            if (a[i] < min) {
                min = a[i];
                min_i = i;
            }
        }
        int temp;
        temp = a[min_i];
        a[min_i] = a[max_i];
        a[max_i] = temp;
        System.out.println("输出新数组:");
       // 将数组打印出来,中间用空格分隔
        for (int i = 0; i < 10; i++) {
            System.out.print(" " + a[i]);
        }
    }
}
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632