एक सी प्रोग्राम लिखने के लिए एल्गोरिदम का पालन करें जो प्रत्येक वर्ण की आवृत्ति को गिनने में सक्षम बनाता है।
एल्गोरिदम
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]); उदाहरण
एक स्ट्रिंग में प्रत्येक वर्ण की आवृत्ति की गणना करने के लिए सी प्रोग्राम नीचे दिया गया है -
#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