解题思路:

注意事项:

参考代码:package Outlier03;

import java.util.Scanner;
//这道题只改变最大,和最小的位置, 我们把这个两个情况单独写出来就可以了,不能像以前一样用循环,因为以前是规定全部按大或者按小排序
public class test46 {
   public static void main(String[] args) {
       Scanner data=new Scanner(System.in);
       int []a=new int[10];//建立一个数组来存放数字

//把最小的数放在第一个
       for (int i=0;i<10;i++){
           a[i]=data.nextInt();
       }
       int min=a[0],index=0;//min用来存放最小的数,index用来存放最小的数在数组中的下标

//找到最小的数,以及把它的数组下标给记录下来
       for (int i=0;i<10;i++){
           if (a[i]<min){
               min=a[i];
               index=i;
           }
       }

//交换最小的数,把最小的数放第一个
       a[index]=a[0];
       a[0]=min;

//把最大的数放在最后
       int max=a[9],index1=9;//max用来存放最大的数,index1用来存放最大数的下标

//找到最大的数,并记录它的下标
       for (int i=0;i<10;i++){
           if (a[i]>max){
               max=a[i];
               index1=i;
           }
       }

//交换最大的数
       a[index1]=a[9];
       a[9]=max;

//输出就行了
       for (int i=0;i<10;i++){
           System.out.print(a[i]+" ");
       }
   }
}

点赞(0)
 

0.0分

3 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 1 条评论

董丕通 11月前 回复TA
这题是自定义函数哥们,写三个函数