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

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

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

C


#include <stdio.h>

int main(int argc, char* argv[])
{
int i, ch;
int cnt[10] = {0};

while ((ch = getchar()) != EOF)
{
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 (i = 0; i < 10; i++)
{
printf("'%d' : %d\n", i, cnt[i]);
}

return 0;
}

実行結果

T:\>lesson065\Project1.exe
3.14159265
^Z
'0' : 0
'1' : 2
'2' : 1
'3' : 1
'4' : 1
'5' : 2
'6' : 1
'7' : 0
'8' : 0
'9' : 1