当前位置:编程学习 > JAVA >>

求答案

 随机生成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]);
}
}

} --------------------编程问答--------------------
引用 2 楼 yangjunloveyu 的回复:
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……



不解,能不能分析下这个过程 --------------------编程问答--------------------
引用 3 楼 wsyangzuda 的回复:
引用 2 楼 yangjunloveyu 的回复:

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() * 1……

就是1楼的想法 --------------------编程问答-------------------- 1楼表示不做解释。LZ自己理解。 --------------------编程问答--------------------
引用 4 楼 yangjunloveyu 的回复:
引用 3 楼 wsyangzuda 的回复:

引用 2 楼 yangjunloveyu 的回复:

public class NumberCount {

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

for(int i = 0; i < 100; i++){
int number ……


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的数 在累加 --------------------编程问答--------------------
引用 2 楼 yangjunloveyu 的回复:
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……



为什么这句话   System.out.println(i + "的个数为:" + a[rrayi]);  ---------中的a[rrayi] 输出的是累加数,而不是它本身含有的值呢?

很不解 --------------------编程问答--------------------   像这种题目最好考自己悟,有了第一次,第二次,第三次就有了。
补充:Java ,  非技术区
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,