文字を数えてコードを改善しようとしました。たとえばwhileループを使う代わりにいくつかの変更を加えました。誰かが私のコードをより専門的で安価にするためにどのようにアドバイスを得たらいいですか?関数(周波数)を使って文字を数えよう
#include <stdio.h>
int countingCharacters(char *message, int size, char charsToBeCounted);
int main()
{
char myString[] = "Hello World!";
int size = strlen(myString);
char charToBeCounted = 'a';
int i = 0;
int counter = 0;
while (myString[i] != '\0')
{
if (myString[i] == charToBeCounted)
{
counter++;
}
++i;
}
for (int i = 'a'; i <= 'z'; i++)
{
printf("%c: %d\n", charToBeCounted, countingCharacters(myString, size, charToBeCounted));
charToBeCounted++;
}
getchar();
return 0;
}
int countingCharacters(char *message, int size, char charsToBeCounted)
{
int counter = 0;
for (int i = 0; i < size; i++)
{
if (message[i] == charsToBeCounted)
counter++;
}
return counter;
}
「while」ループはなぜそこにありますか?どこでも 'counter 'を使用していません。 –
「アドバイスをもっとプロフェッショナルかつ安価にするためにコードを改善する方法は?」 - > https://codereview.stackexchange.com - より良いサイトの選択を検討してください。 (これは正しく動作することを前提としています) – chux
'countingCharacters()'には少なくとも4つの改良点があります。[codereview](https://codereview.stackexchange.com/)の作業用コードを投稿してください。 – chux