首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

帮忙看看 这个程序 有点小疑点

2013-02-24 
帮忙看看 这个程序 有点小问题 ?要求定义一个int型数组a,包含100个元素,保存100个随机的4位数。再定义一个i

帮忙看看 这个程序 有点小问题 ?

要求定义一个int型数组a,包含100个元素,保存100个随机的4位数。再定义一个
int型数组b,包含10个元素。统计a数组中的元素对10求余等于0的个数,保存
到b[0]中;对10求余等于1的个数,保存到b[1]中,……依此类推。

public  class java15{
  public  static void main(String[] args){
     int[] array;
            array= new int[100];
   for(int i=0;i<array.length;i++){
 array[i] =(int) (Math. random()*10000);// 这里怎么把随机的四位数赋值给数组
  System.out.println(array[i]+"  ");
   }
   int b[]=new int[10];
   int sum=0 ,k=0;
   
   for(int j=0;j<b.length;j++ ){
    for(sum=0,k=0;k<array.length;k++){
    if(array[k]%10==j)  sum++;
                    b[j]=sum;
    }
                   System.out.printf("b[%d]=%d\n"+j,b[j]);
    
    }
    
   }
}
 运行之后出现 以下问题,求大侠分析 哪方面的问题?
b[10]=Exception in thread "main" java.util.MissingFormatArgumentException: Format specifier 'd'
at java.util.Formatter.format(Unknown Source)
at java.io.PrintStream.format(Unknown Source)
at java.io.PrintStream.printf(Unknown Source)
at java15.main(java15.java:18)

[解决办法]
System.out.printf("b[%d]=%d\n"+j,b[j]);
这一句错了。
把加号改成逗号。
[解决办法]
System.out.println("b[" + j + "]=" + b[j]);
[解决办法]
 System.out.printf("b[%d]=%d\n"+j,b[j]);
+j改为,j

%是占位符,后面才一个参数
[解决办法]
楼上正解。。
[解决办法]

引用:
是啊  再想问一下 怎么把随机的四位数赋给数组。

这个循环就已经把生成的数赋给数组了。
array[i] =(int) (Math. random()*10000);
将等号右边表达式的值赋给array[i]

热点排行