C Program to find minimum occurrence of character in a string



An array of characters is called a string.

Declaration

Following is the declaration for declaring an array is as follows −

char stringname [size];

For example − char string[50]; string of length 50 characters

Initialization

  • Using single character constant −
char string[10] = { ‘H’, ‘e’, ‘l’, ‘l’, ‘o’ ,‘\0’}
  • Using string constants −
char string[10] = "Hello":;

Accessing − There is a control string "%s" used for accessing the string till it encounters ‘\0’.

Finding minimum occurrence

The logic to find minimum occurrence of a character in a given string is as follows −

for(i=0; i<CHARS; i++){
   if(frequency[i]!=0){
      if(frequency[minimum] == 0 || frequency[i]< fequency[minimum]) minimum = i;
}

Program

Following is the C program to find minimum occurring character in a string.

#include<stdio.h>
#define SIZE 100 // Maximum string size
#define CHARS 255 // Maximum characters allowed
int main(){
   char string[SIZE];
   int frequency[CHARS];
   int i = 0, minimum;
   int value;
   printf("Enter the string:
");    gets(string);    for(i=0; i<CHARS; i++){       frequency[i] = 0; // initialize freq of all char to zero    }    i=0;    while(string[i] != '\0'){ // finding freq of each char       value = (int)string[i];       frequency[value] += 1;       i++;    }    minimum = 0;    for(i=0; i<CHARS; i++){// finding min freq       if(frequency[i]!=0){          if(frequency[minimum] == 0 || frequency[i]<fequency[minimum])             minimum = i;    }    printf("Minimum occurrence character is '%c' = %d times.", minimum,    frequency[minimum]);    return 0; }

Output

When the above program is executed, it produces the following result −

Enter the string:
tutorialspoint
Minimum occurrence character is 'a' = 1 times.

Advertisements