求答案
随机生成100个0-99的数字,统计0 1 2 3 4 5 6 7 8 9出现的个数,然后输出。--------------------编程问答-------------------- 创建一个长度为10初始值为0的int数组就可以解决了。每次产生的数字寻找对应下标,直接在那个位置加一。 --------------------编程问答-------------------- public class NumberCount {
public static void main(String[] args) {
int[] array = new int[10];
for(int i = 0; i < 100; i++){
int number = (int) (Math.random() * 100);
if(number < 10){
array[number] = ++array[number];
}
else{
int de = number % 10;
array[de] = ++array[de];
int unit = number / 10;
array[unit] = ++array[unit];
}
}
for(int i = 0; i < 10; i++){
System.out.println(i + "的个数为:" + array[i]);
}
}
} --------------------编程问答--------------------
不解,能不能分析下这个过程 --------------------编程问答--------------------
就是1楼的想法 --------------------编程问答-------------------- 1楼表示不做解释。LZ自己理解。 --------------------编程问答--------------------
int de = number % 10;
array[de] = ++array[de];
int unit = number / 10;
array[unit] = ++array[unit];
这句话 怎么理解??? --------------------编程问答-------------------- 有谁能帮我解答下6楼的问题吗
int de = number % 10;
array[de] = ++array[de];
int unit = number / 10;
array[unit] = ++array[unit];
这句话 怎么理解??
在线等呀 --------------------编程问答-------------------- 就是把 number这个数取与后的数用 de 表示 如 82%10=2; 则 array[de]表示的就是个位上的是2的数
同理 array[unit] 如 82/10=8 表示的是十位上的数是8的数 在累加 --------------------编程问答--------------------
为什么这句话 System.out.println(i + "的个数为:" + a[rrayi]); ---------中的a[rrayi] 输出的是累加数,而不是它本身含有的值呢?
很不解 --------------------编程问答-------------------- 像这种题目最好考自己悟,有了第一次,第二次,第三次就有了。
补充:Java , 非技术区