Computer >> 컴퓨터 >  >> 프로그램 작성 >> C 프로그래밍

각 문자의 단어, 모음 및 빈도 인쇄

<시간/>

문자열을 입력하고 사용자가 입력한 문자의 총 단어, 모음 및 빈도를 찾습니다.

Input : enter s string : I love my MOM  
   Enter a charcter of which you want to find a frequency: M
   Total frequency of M : 2
   Total number of vowels : 4
   Total number of words : 4

알고리즘

START
Step 1 Declare array of string, ch, i, freq to 0, vow to 0, word to 0
Step 2 Input a string and a character ch
Step 3 Loop for from i to 0 and str[i]!=’\o’ and ++i
Step 3.1 IF statement for ch==str[i]
   Post incrementing freq
   Step 3.2 End If
   Step 3.3 IF statement
   str[i]=='a'||str[i]=='e'||str[i]=='i'||str[i]=='o'||str[i]=='u'||str[i]=='A'||str[i]=='E'||str[i]=='I'||str[i]=='O'||str[i]=='U'
      Post incrementing vow
   Step 3.4 End If
   Step 3.5 IF statement str[i]=’ ’
      Post incrementing word
   Step 3.6 End If
Step 4 End For loop
STOP

예시

#include <stdio.h>
int main() {
   char str[1000], ch;
   int i, freq=0, vow=0, word=0;
   printf("Enter a string of your choice: ");
   gets(str);
   printf("Enter a character of which you want to find the frequency: ");
   scanf("%c",&ch);
   for(i = 0; str[i] != '\0'; ++i){
      if(ch == str[i]) //to find the frequency of a character {
         ++freq;
      }
      if(str[i]=='a'||str[i]=='e'||str[i]=='i'||str[i]=='o'||str[i]=='u'||str[i]=='A'||str[i]=='E'||str[i]=='I'||str[i]=='O'||str[i]=='U') {
         ++vow; //to find the number of vowels
      }
      if (str[i] == ' ') {
         word++; //to find the number of words
      }
   }
   printf("Frequency of %c = %d", ch, freq);
   printf("\ntotal number of vowels in a string are %d " ,vow );
   printf("\ntotal number of words in a string are %d " ,word+1 );
   return 0;
}

출력

위의 프로그램을 실행하면 다음과 같은 출력이 생성됩니다.

Enter a string of your choice: I love PrograMMIng
Enter a character of which you want to find the frequency: M
Frequency of M = 2
total number of vowels in a string are 6
total number of words in a string are 3