public static void main(String args[])
{int c[]=new int[10];

int a[]={5,4,3,2};
int b[]={3,4,5,6};
for(int i=3;i>=0;i--){
for(int j=3;j>=0;j--){
for(int k=0;k<=i*j;k++){  c=b[j]*a[i];
}
}
}
for(int k=0;k<c.length;k++)
{
System.out.println(c[k]+" ");}
}
}
我的目的是:从b的最后一位开始,乘以a的最后一位,倒数第二位,倒数第三位然后从b的倒数第二位,也乘以a的最后一位,倒数第二位。。把所有的值传入一个c数组。然后输出这些值,我怎么也没输出来,大家帮我看看毛病在哪?还有。c的数组长度应该怎么定义,谢谢

解决方案 »

  1.   

    长度定义一个足够大的,或者c使用list代替喵
      

  2.   

    我的目的是:从b的最后一位开始,乘以a的最后一位,倒数第二位,倒数第三位然后从b的倒数第二位,也乘以a的最后一位,倒数第二位。。把所有的值传入一个c数组。然后输出这些值,我怎么也没输出来,大家帮我看看毛病在哪?还有。c的数组长度应该怎么定义,谢谢public class Test {
    public static void main(String[] args) {
    {
    int c[] = new int[4]; //如果计算每b的最后一位乘以a的最后一位,倒数第二位,倒数第三位的结果,如果不知道可用
                                                        //ArrayList
    int sum=0;
    int a[] = { 5, 4, 3, 2 };
    int b[] = { 3, 4, 5, 6 };

    for (int i = 3; i >= 0; i--) {
    sum=0;  //清零,
    for (int j = 3; j >= 0; j--) {
    sum+=b[i]*a[j]; //b的最后一位乘以a的最后一位,倒数第二位,倒数第三位的结果
    }
    c[i]=sum;    //统计出一个结果

    }

    for (int k = c.length-1; k >=0; k--) {
    System.out.println(c[k] + " ");
    }
    }
    }}
      

  3.   

        
    public static void main(String arg[]) {        int a[] = { 5, 4, 3, 2 };
            int b[] = { 3, 4, 5, 6 };        int cLength = a.length * b.length;
            int c[] = new int[cLength];
            for (int i = 3; i >= 0; i--) {
                for (int j = 3; j >= 0; j--) {
                    System.out.println("数组b的第" + (i + 1) + "个元素:" + b[i] + "乘以数组a的第" + (j + 1) + "个元素:" + a[j] + "的结果为:"
                            + b[i] * a[j]);
                    c[--cLength] = b[i] * a[j];
                }
            }
            for (int k = 0; k < c.length; k++) {
                System.out.println(c[k] + " ");
            }
        }
      

  4.   

    public static void main(String args[]) {
                    int a[] = { 5, 4, 3, 2 };
            int b[] = { 3, 4, 5, 6 };
            
            int c[] = new int[a.length*b.length];
            
            for (int i = 3; i >= 0; i--) {
                for (int j = 3; j >= 0; j--) {
                    c[(3-j)*4 + 3-i] = b[j] * a[i];
                }
            }
            for (int k = 0; k < c.length; k++) {
                System.out.println(c[k] + " ");
            }
        }
      

  5.   

    public class Test {
        public static void main(String[] args) {
            {
                int c[] = new int[4]; //如果计算每b的最后一位乘以a的最后一位,倒数第二位,倒数第三位的结果,如果不知道可用
                                                        //ArrayList
                int sum=0;
                int a[] = { 5, 4, 3, 2 };
                int b[] = { 3, 4, 5, 6 };
                
                for (int i = 3; i >= 0; i--) {
                    sum=0;  //清零,
                    for (int j = 3; j >= 0; j--) {
                        sum+=b[i]*a[j]; //b的最后一位乘以a的最后一位,倒数第二位,倒数第三位的结果
                    }
                    c[i]=sum;    //统计出一个结果
                    
                }
                
                for (int k = c.length-1; k >=0; k--) {
                    System.out.println(c[k] + " ");
                }
            }
        }}
      

  6.   

    int a[] = {2,4,5,8};
    int b[] = {1,2,8,10};
    int c[] = new int[a.length * b.length];//C的长度应该是A与B的长度之积吧~
    int k=0;
    for (int i = b.length - 1; i >= 0; i--)
    for (int j = a.length - 1; j >= 0; j--){
    c[k] = b[i] * a[j];//把对应的数据乖到C中,如果觉得数据有可能特别大的话可以把C定义为Long[]
    k++;
    }
      

  7.   

    int a[] = {2,4,5,8};
    int b[] = {1,2,8,10};
    int c[] = new int[a.length * b.length];//C的长度应该为A的长度与B长度之积~
    int k=0;
    for (int i = b.length - 1; i >= 0; i--)
    for (int j = a.length - 1; j >= 0; j--){
    c[k] = b[i] * a[j];
    k++;
    }
      

  8.   

    int a[] = {2,4,5,8}; 
    int b[] = {1,2,8,10}; 
    int c[] = new int[a.length * b.length];//C的长度应该为A的长度与B长度之积~ 
    int k=0; 
    for (int i = b.length - 1; i >= 0; i--) 
    for (int j = a.length - 1; j >= 0; j--){ 
    c[k] = b[i] * a[j]; 
    k++; 
    }
      

  9.   

    靠,我拷贝最开始的回复怎么会成这东西呢~还有我提交时CSDN老提示错误`晕`
      

  10.   

    大整数相乘不难哦举个789*456 其中int a[]={7,8,9} int b[]={4,5,6}int c[]=new int[a.length+b.length]
    那么c[0]中放6*9=54 c[1]放6*8+5*9 c[2]放6*7+5*8+4*9依次类推.然后从i=0开始进行 c[i]/10 得到的作为进位 推给c[i+1] c[i]=c[i]%10然后把数组从后向前输出即可