今天看了一个数字统计的代码,觉得本人也能尝试的写一写(毕竟本人是个小菜鸟)
题目是这样的输入一个数字,从1开始数到n,统计这期间一共有多少个0,多少个1……
于是思考:
将1到n的数字存入到数组中
再将数组中的数字转换成字符串的形式
将字符串转换成char类型的字符组
使用计算器进行计算
大功告成!!!
代码如下:
import java.util.Scanner;
class Main {
public static void main(String [] args){
Scanner sc = new Scanner(System.in);
while(sc.hasNext()){
int n = sc.nextInt();
//创建一个数组来存入输入的数字
int [] a = new int [n+1];
for(int i=1; i<=n; i++){
a[i] = i;
}
//定义一个字符串类型来存由数字转换成的字符串
String str2 = "";
for(int j=1; j<a.length; j++){
String str = String.valueOf(a[j]);
str2 += str;
}
char [] chs = str2.toCharArray();
//计算器
for(char ch = '0';ch < '9';ch++){
int count = 0;
for(int i=0; i<chs.length; i++){
if(ch == chs[i]){
count++;
}
}
if(count != 0){
System.out.println(count);
}
}
}
}
}
运行结果如下:
本文介绍了一种通过编程方式统计从1到任意数字n中每个数字0到9出现次数的方法。作者首先将数字存储在数组中,接着将数组转换为字符串,并进一步转化为字符数组,最后遍历字符数组统计各个数字的出现频率。
171万+

被折叠的 条评论
为什么被折叠?



