public class  InsertNumber
{
public static void main(String[] args) 
{
int arr[] = new int[100]; arr[0] = 2;
arr[1] = 4;
arr[2] = 8;
arr[3] = 5;
arr[4] = 9;
arr[5] = 11;
arr[6] = 23;
arr[7] = 22; int temp = 8; int j = 0;
int srt = 9; int insert = 100;//要插入的数据 for (j = 0;j < temp ;j++ )
         {
                   if (arr[j] == srt)
               break;
              } for (int i = j;i < temp ;i++)         
{


arr[i] = arr[i -1];//前面的元素往后移 int demo = arr[i]; arr[i] = insert;



} for (j = 0;j < temp ;j++ )
{
System.out.print(arr[j]+" ");
}
}
}//打印出来应该是2 4 8 5 100 9 11 23 22
//为什么会是2 4 8 5 100 100 100 100 

解决方案 »

  1.   

    你把代码改成这样就可以了
    public class  InsertNumber
    {
    public static void main(String[] args) 
    {
    int arr[] = new int[100]; arr[0] = 2;
    arr[1] = 4;
    arr[2] = 8;
    arr[3] = 5;
    arr[4] = 9;
    arr[5] = 11;
    arr[6] = 23;
    arr[7] = 22; int temp = 8; int j = 0;
    int srt = 9;
            int i;
    int insert = 100; for (j = 0;j < temp ;j++ )
             {
                       if (arr[j] == srt)
                   break;
                  } for (i=temp;i>j;i--)         
    {


    arr[i] = arr[i-1]; }

    arr[i] = insert;



    for (j = 0;j<=temp ;j++)
    {
    System.out.print(arr[j]+" ");
    }
    }
    }