输入十个数,最大的数和第最后一个数对换,最小的数和第一个数字对换

这个题的坑在于,替换一次最小或者最大的之后再重新找最小的和最大的,然后再替换最大的。

如果想着单独处理最大最小分别在第一和最后的情况的话,就有点复杂了。

 1 import java.util.Scanner;
 2 public class 整数最大金额最小对换1044 {
 3 
 4     public static void main(String[] args) {
 5         Scanner scanner=new Scanner(System.in);
 6         int[] index=new int[10];
 7         for (int i = 0; i < 10; i++) {
 8             index[i]=scanner.nextInt();
 9         }
10         scanner.close();
11         
12         int max_pos=0,min_pos=0;
13         int max=0,min=0xffff;
14         for(int i=0;i<10;i++) {
15             if(max<index[i]) {
16                 max=index[i];
17                 max_pos=i;
18             }
19             if(min>index[i]) {
20                 min=index[i];
21                 min_pos=i;
22             }
23         }
24         
25             int temp=0;
26             temp=index[0];
27             index[0]=min;
28             index[min_pos]=temp;
29     
30             
31              max_pos=0;min_pos=0;
32              max=0;min=0xffff;
33             for(int i=0;i<10;i++) {
34                 if(max<index[i]) {
35                     max=index[i];
36                     max_pos=i;
37                 }
38                 if(min>index[i]) {
39                     min=index[i];
40                     min_pos=i;
41                 }
42             }
43             
44             temp=0;
45             temp=index[9];
46             index[9]=max;
47             index[max_pos]=temp;
48         
49 
50         for(int i=0;i<10;i++) {
51             System.out.print(index[i]+" ");
52         }
53     
54     }
55 
56 }

 

转载于:https://www.cnblogs.com/kongchung/p/9720785.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值