Java编程题,求大神们帮忙看看

有一个长度为n的整数序列。请写一个程序,先把序列中的最小值与第一个数交换,再把最大值与最后一个数交换。输出转换好的序列。importjava.util.Scanner;p... 有一个长度为n的整数序列。请写一个程序,先把序列中的最小值与第一个数交换,再把最大值与最后一个数交换。输出转换好的序列。
import java.util.Scanner;

public class Nan {

public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner Nan = new Scanner(System.in);
int n = Nan.nextInt();
int[] a = new int[n];

int max = a[0];
int min = a[0];

for(int i = 1;i < n;i++){
if(a[i]>max){
max = a[i];

if(a[i]<min){
min = a[i];

int t = a[max];
a[max] = a[0];
a[1] = t;

int b = a[min];
a[min] = a[n-1];
a[n] = b;

}

}
}
for (int i = 0;i < a.length;i++){
System.out.println(a[i]);
}
}
}
这是我写的,但输出总是几个0。所以一定哪不对,学了没几天,搞了半天没搞好
展开
 我来答
来宾你好闯天涯
2017-11-12 · TA获得超过3876个赞
知道大有可为答主
回答量:4086
采纳率:64%
帮助的人:798万
展开全部
package com.lian.threeToggle;

import java.util.Scanner;

public class Nan {

public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("请输入数组的长度:");
int n = scan.nextInt();
System.out.println("数组的长度是:"+n);
int[] a = getArrayNumber(n);
output(a);
//逻辑部分:
int max = a[0];
int min = a[0];
System.out.println("初始的最小值和最大值分别是:"+max+","+min);

int[] b = luojibufen(a,min,max);
//result line
output(b);
}

private static int[] luojibufen(int[] a,int min,int max) {
int n = a.length;
for (int i = 1; i < n; i++) {
if (a[i] > max) {
max = a[i];//get max
}
if (a[i] < min) {
min = a[i];//get min
}
}
//讲最小值与a[0]交换,就是a[0]交换min
int temp = a[0];
a[0] = min ;
min = temp;
// 最大值与a[n-1]交换
int ss = a[n-1];
a[n-1]= max;
max = ss;
return a;
}

private static void output(int[] a) {
System.out.print("数组里面的数字依次为:");
for (int i : a) {
System.out.print(i+" ");
}
System.out.println("/////////////////////");
}

private static int[] getArrayNumber(int n) {
int[] an= new int[n];
for(int i=0; i<n; i++){
System.out.println("输入第"+(i+1)+"个数字");
Scanner scan = new Scanner(System.in);
an[i]=scan.nextInt();
}
return an;
}
}
xdyuan33333
2017-11-12 · 超过78用户采纳过TA的回答
知道小有建树答主
回答量:164
采纳率:70%
帮助的人:73.8万
展开全部
交换放在循环体外
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式