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