プログラミング+α学習ブログ

勉強したことの備忘録です。

入力に出現する数字をカウントして表示するプログラム

#include <stdio.h>

int main(void)
{
    int i, ch;
    int cnt[10] = {0};  // 数字文字の出現回数(全ての要素を0で初期化)
    
    while (1) { // 無限ループ
        ch = getchar();
        if (ch == EOF) break;
        
        if (ch >= '0' && ch <= '9')
            cnt[ch - '0']++;
    }
    
    puts("数字文字の出現回数");
    for (i = 0; i < 10; i++)
        printf("'%d':%d\n", i, cnt[i]);
    
    return (0);
}

実行結果

3.1415926535897932846
数字文字の出現回数
'0':0
'1':2
'2':2
'3':3
'4':2
'5':3
'6':2
'7':1
'8':2
'9':3