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

C 문자열에서 문자의 최소 발생을 찾는 프로그램

<시간/>

문자 배열을 문자열이라고 합니다.

선언

다음은 배열을 선언하기 위한 선언입니다. -

char stringname [size];

예를 들어 - char string[50]; 길이 50자의 문자열

초기화

  • 단일 문자 상수 사용 -
char string[10] = { ‘H’, ‘e’, ‘l’, ‘l’, ‘o’ ,‘\0’}
  • 문자열 상수 사용하기 -
char string[10] = "Hello":;

액세스 − '\0'이 나타날 때까지 문자열에 액세스하는 데 사용되는 제어 문자열 "%s"가 있습니다.

최소 발생 찾기

주어진 문자열에서 문자의 최소 발생을 찾는 논리는 다음과 같습니다 -

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

프로그램

다음은 문자열에서 최소 발생 문자를 찾는 C 프로그램입니다.

#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:\n ");
   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;
}

출력

위의 프로그램을 실행하면 다음과 같은 결과가 나온다 -

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