Cプログラミング
 Computer >> コンピューター >  >> プログラミング >> Cプログラミング

各文字の頻度を数えるCプログラムを書く


アルゴリズムに従って、各文字の頻度をカウントできるCプログラムを作成します。

アルゴリズム

Step 1: Define MAX size.
Step 2: Declare char and integer variables.
Step 3: Read the string from console.
Step 4: Find length of the string.
Step 5: Initialize frequency of each character to 0.
Step 6: Find total number of occurrences of each character.
for(i=0; i<length; i++)
   i. if(string[i]>='a' && string[i]<='z')
   frequency[string[i] - 97]++;
   ii. else if(string[i]>='A' && string[i]<='Z')
      frequency[string[i] - 65]++;
Step 7: Print the frequency of all characters in the string.
if(frequency[i] != 0)
   printf("'%c' = %d\n", (i + 97), frequency[i]);

以下に示すのは、文字列内の各文字の頻度をカウントするCプログラムです-

#include <stdio.h>
#include <string.h>
#define MAX 100 // Maximum string size
int main(){
   char string[MAX];
   int i, length;
   int frequency[20];
   /* Input string from user */
   printf("enter the string:\n ");
   gets(string);
   length = strlen(string);
   /* Initialize frequency of each character to 0 */
   for(i=0; i<20; i++){
      frequency[i] = 0;
   }
   /* Find total number of occurrences of each character */
   for(i=0; i<length; i++){
      /* If the current character is lowercase alphabet */
      if(string[i]>='a' && string[i]<='z'){
         frequency[string[i] - 97]++;
      }
      else if(string[i]>='A' && string[i]<='Z'){
         frequency[string[i] - 65]++;
      }
   }
   /* Print the frequency of all characters in the string */
   printf("\nFrequency of all characters in string: \n");
   for(i=0; i<20; i++){
      /* If current character exists in given string */
      if(frequency[i] != 0){
         printf("'%c' = %d\n", (i + 97), frequency[i]);
      }
   }
   return 0;
}

出力

上記のプログラムを実行すると、次の結果が得られます-

enter the string:
Tutorials Point
Frequency of all characters in string:
'a' = 1
'i' = 2
'l' = 1
'n' = 1
'o' = 2
'p' = 1
'r' = 1
's' = 1
't' = 3

  1. Androidで文字列内の各文字の出現をカウントする方法は?

    この例は、Androidで文字列内の各文字の出現をカウントする方法を示しています。 ステップ1 − Android Studioで新しいプロジェクトを作成し、[ファイル]⇒[新しいプロジェクト]に移動して、新しいプロジェクトを作成するために必要なすべての詳細を入力します。 ステップ2 −次のコードをres / layout/activity_main.xmlに追加します。 <?xml version = "1.0" encoding = "utf-8"?> <LinearLayout xmlns:android = "htt

  2. gotoステートメントを説明するCプログラム

    Cプログラムは、5つの数値の平方根を評価します。変数countは、読み取られた数値の数を格納します。 countが5以下の場合、gotoreadステートメントは制御をラベルreadに転送します。それ以外の場合、プログラムはメッセージを出力して停止します。 Gotoステートメント これは、プログラムの通常のシーケンスの後に、制御をプログラムの他の部分に移すことによって使用されます。 プログラム 以下は、gotoステートメントを使用するためのCプログラムです- #include <math.h> main(){    double x, y;