黑马程序员技术交流社区
标题:
大神快来快来帮我看看怎么回事
[打印本页]
作者:
阳光下午睡
时间:
2016-6-30 18:58
标题:
大神快来快来帮我看看怎么回事
import java.util.*;
class Day05 {
public static void main(String[] args) {
print3();
}
public static void print3(){
int[] arr = new int[6];
Scanner sc = new Scanner(System.in);
int count = 0;
while (count<6){
System.out.println("请输入第"+(count+1)+"数据");
int num = sc.nextInt();
arr[count] = num;
count++;
}
for (int i = 0 ;i<arr.length/2 ;i++ ){
int temp = arr[i];
arr[i] = arr[arr.length-1-i];
arr[arr.length-1-i] = temp;
}
/*for (int start = 0,end = arr.length-1 ;start<=end ;start++,end-- ){
int temp = arr[start];
arr[start] = arr[end];
arr[end] = temp;
}*/
for (int i = 0 ;i<arr.length ;i++ ){
if (i%2==1&&i<arr.length-2){
int temp = arr[i];
arr[i] = arr[i+2];
arr[i+2] = temp;
}
}
for (int i = 0 ;i<arr.length ;i++ ){
if (i==1&&(arr.length-1)%2==1){
int temp = arr[i];
arr[i] = arr[arr.length-1];
arr[arr.length-1] = temp;
}
System.out.print(arr[i]+" ");
}
}
}
我的最后一次交换位置是否有问题,如果没问题的话,为什么不判断i==1直接判断(arr.length-1)%2==1输出没有反应呢?
作者:
梦想天空分外蓝
时间:
2016-6-30 19:01
好认真 ,,我也不知道,,
作者:
robintian
时间:
2016-6-30 21:30
给你分享一下我的代码吧
/*第四步交换*/
public static void finalSwap(int[] arr) {
if(1 == (arr.length - 1) % 2) {
swap(arr, 1, arr.length - 1);
}
else {
swap(arr, 1, arr.length - 2);
}
}
/*交换数组中两个元素的位置*/
public static void swap(int[] arr, int index1, int index2) {
int temp = arr[index1];
arr[index1] = arr[index2];
arr[index2] = temp;
}
作者:
robintian
时间:
2016-6-30 21:32
话说你做的是第五天的作业么,最好以后把题也放上来吧
作者:
微--尘
时间:
2016-7-2 01:03
用Eclipse的Debug一步一步调试运行看下,看执行步骤和数组值的变化
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2