英文(Apple等)を入力すると
英小字(aーz)の出現回数を調べ
結果をアルファベット順に表示し
出現回数が0の英小字は表示しない
プログラムの作成についての質問です。
コンパイルには成功するのですが
ex_04_01.c:13:11: warning: 'i' is used uninitialized in this function [-Wuninitialized]
printf("%c:%d\n", 'a'-'z', cc[i]);
という警告が表示されてしまいます。
『printf("%c:%d\n", 'a'-'z', cc[i]); // a:1 e:2 といったように表示する』
この部分のプログラミングの記述が間違っていることはわかるのですが、
どういった記述をすればよいのかわかりません。
よろしければご教授のほどお願い致します。
c
1#include <stdio.h> 2 3int main(void) { 4 char ch; 5 int cc[26] = {0}; // a~zまでの文字数が26なので 6 int i; // 26個の変数を用意 7 8 for(; (ch = getchar()) !=EOF;){ 9 if ((ch) >='a' && (ch) <='z'); //a~zであれば 10 cc[ch-'a']++; //a~zいずれかの変数の箱に1ずつ追加して 11 } 12 if (cc[ch-'a'] > 0 ); //英小字の出現回数が0より大きければ 13 printf("%c:%d\n", 'a'-'z', cc[i]); // a:1 e:2 といったように表示する 14 15 return 0; 16}