import java.util.*;
public class jdyouxi {
public static void main(String[] args) {
int i;
int[]kanzi=new int[5];
System.out.print("请输入五个数字,输入单个数字并回车:");
Scanner cc=new Scanner(System.in);
for(i=1;i<=5;i++) {
kanzi[i]=cc.nextInt();
}
for(i=1;i<=5;i++) {
System.out.print(kanzi[i]);
}
}
}
上面的程序错误出现在哪里,这个程序的功能是从键盘输入五个数字,然后逆序输出这五个数字,请高手指点

解决方案 »

  1.   

    数组越界
    int[]kanzi=new int[5]; 
    应该修改为
    int[]kanzi=new int[6]; 如果想逆向输出的话
    第二个for循环的内容要修改
    for(i=1;i <=6;i++) { 
    System.out.print(kanzi[6-i]); 

      

  2.   

    数组的下标是从0开始一直到n-1的。你的for循环访问kanzi数组都是从1开始访问到5,但kanzi数组的大小只有5,即要访问该数组下标应该是从0到4
      

  3.   

    import java.util.*; 
    public class jdyouxi { 
    public static void main(String[] args) { 
    int i; 
    int[]kanzi=new int[5]; 
    System.out.print("请输入五个数字,输入单个数字并回车:"); 
    Scanner cc=new Scanner(System.in); 

    for(i=0;i <5;i++) { 
    kanzi[i]=cc.nextInt(); 


    for(i=0;i <5;i++) { 
    System.out.print(kanzi[i]); 


    }逆序输出这五个数字:import java.util.*; 
    public class jdyouxi { 
    public static void main(String[] args) { 
    int i; 
    int[]kanzi=new int[5]; 
    System.out.print("请输入五个数字,输入单个数字并回车:"); 
    Scanner cc=new Scanner(System.in); 

    for(i=0;i <5;i++) { 
    kanzi[i]=cc.nextInt(); 


    for(i=4;i>=0;i--) { 
    System.out.print(kanzi[i]); 



      

  4.   

    import java.util.*; 
    public class jdyouxi { 
    public static void main(String[] args) { 
    int i; 
    int[]kanzi=new int[5]; 
    System.out.print("请输入五个数字,输入单个数字并回车:"); 
    Scanner cc=new Scanner(System.in); 
    for(i=0;i < 5;i++) { 
    kanzi[i]=cc.nextInt(); 

    Arrays.sort(kanzi);  //
    for(i=4;i >= 0;i--) {  //
    System.out.print(kanzi[i]); 


      

  5.   

    import java.util.*; 
    public class Test { 
      public static void main(String[] args) { 
        int i; 
    int[] kanzi = new int[5]; 
    System.out.println("请输入五个数字,输入单个数字并回车:"); 
    Scanner cc = new Scanner(System.in); 
    for(i=0;i <5;i++) { 
    kanzi[i]=cc.nextInt(); 

    for(i=4;i>=0;i--) { 
    System.out.print(kanzi[i]+" "); 


      

  6.   

    数组下标是从0开始的,你循环从1开始越界了!!再说你也没有逆序输出而是顺序输出的。看下面代码是逆序输出的:
    import java.util.*; 
    public class chengfabiao { 
    public static void main(String[] args) { 
    int i; 
    int[]kanzi=new int[5]; 
    System.out.print("请输入五个数字,输入单个数字并回车:"); 
    Scanner cc=new Scanner(System.in); 
    for(i=0;i <5;i++) { 
    kanzi[i]=cc.nextInt(); 

    for(i=4;i>=0;i--) { 
    System.out.print(kanzi[i]);