Home »
C programs »
C string programs
C program to find the frequency of a character in a string
By IncludeHelp Last updated : December 26, 2023
Problem statement
Given a string, write a C program to find the frequency of a character in the given string.
Finding the frequency of a character in a string
Here, we are reading a character array/string (character array is declaring with the maximum number of character using a Macro MAX that means maximum number of characters in a string should not more than MAX (100), then we are reading a character to find the occurrence and counting the characters which are equal to input character.
For example:
If input string is "Hello world!" and we want to find occurrence of 'l' in the string, output will be 'l' found 3 times in "Hello world!".
Program to find occurrence of a character in an input string in C
#include <stdio.h>
#define MAX 100
int main()
{
char str[MAX] = { 0 };
char ch;
int count, i;
//input a string
printf("Enter a string: ");
scanf("%[^\n]s", str); //read string with spaces
getchar(); // get extra character (enter/return key)
//input character to check frequency
printf("Enter a character: ");
ch = getchar();
//calculate frequency of character
count = 0;
for (i = 0; str[i] != '\0'; i++) {
if (str[i] == ch)
count++;
}
printf("\'%c\' found %d times in \"%s\"\n", ch, count, str);
return 0;
}
Output
First run
Enter a string: Hello world!
Enter a character: l
'l' found 3 times in "Hello world!"
Second run
Enter a string: Hello world!
Enter a character: x
'x' found 0 times in "Hello world!"
In this example, we have used the following C language topics that you should learn:
C String Programs »