回答編集履歴

2

誤記訂正

2021/05/01 15:07

投稿

otn
otn

スコア84571

test CHANGED
@@ -30,7 +30,7 @@
30
30
 
31
31
  int ch;
32
32
 
33
- int cc[255] = {0};
33
+ int cc[256] = {0};
34
34
 
35
35
  int i;
36
36
 

1

追記

2021/05/01 15:07

投稿

otn
otn

スコア84571

test CHANGED
@@ -15,3 +15,47 @@
15
15
 
16
16
 
17
17
  `if`を使って0出ない時だけ出力します。
18
+
19
+ ##追記
20
+
21
+ 文字をそのまま配列の添え字に使う。
22
+
23
+ ```C
24
+
25
+ #include <stdio.h>
26
+
27
+
28
+
29
+ int main(void) {
30
+
31
+ int ch;
32
+
33
+ int cc[255] = {0};
34
+
35
+ int i;
36
+
37
+
38
+
39
+ for(; (ch = getchar())!=EOF;) {
40
+
41
+ // 普通は、while((ch = getchar())!=EOF) {
42
+
43
+ if((ch >= 'a') && (ch <= 'z')){
44
+
45
+ cc[ch]++;
46
+
47
+ }
48
+
49
+ }
50
+
51
+ for(i='a'; i<='z'; i++) {
52
+
53
+ printf("%c:%d\n", i, cc[i]);
54
+
55
+ }
56
+
57
+ return 0;
58
+
59
+ }
60
+
61
+ ```