標準入力からの入力に現れた数字をカウントする

明解C言語 入門編 > 8. いろいろなプログラムを作ってみよう >

標準入力からの入力に現れた数字をカウントする

Java
import java.util.Scanner;

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

        Scanner stdIn = new Scanner(System.in);

        String str;
        while (stdIn.hasNext()) {
            str = stdIn.next();

            for (int i = 0; i < str.length(); i++) {
                char ch = str.charAt(i);
                switch (ch) {
                    case '0': cnt[0]++; break;
                    case '1': cnt[1]++; break;
                    case '2': cnt[2]++; break;
                    case '3': cnt[3]++; break;
                    case '4': cnt[4]++; break;
                    case '5': cnt[5]++; break;
                    case '6': cnt[6]++; break;
                    case '7': cnt[7]++; break;
                    case '8': cnt[8]++; break;
                    case '9': cnt[9]++; break;
                }
            }
        }

        for (int i = 0; i < 10; i++)
            System.out.printf("'%d' : %d\n", i, cnt[i]);
    }
}

実行結果

L:\>java Lesson065
3.14159265
^Z
'0' : 0
'1' : 2
'2' : 1
'3' : 1
'4' : 1
'5' : 2
'6' : 1
'7' : 0
'8' : 0
'9' : 1