C程序在字符串中查找最大出现的字符
字符数组称为字符串。
宣言
以下是声明数组的声明如下 -
char stringname [size];
例如:char string[50]; 长度为 50 个字符的字符串
初始化
使用单字符常量 -
char string[10] = { ‘H’, ‘e’, ‘l’, ‘l’, ‘o’ ,‘\0’}
使用字符串常量 -
char string[10] = "Hello":;
访问- 有一个控制字符串 "%s" 用于访问字符串,直到它遇到 '\0'。
寻找最大出现次数
找到最大出现字符的逻辑是 -
首先,使用以下程序查找字符的频率。
while(string[i] != '\0'){value = (int)string[i];
frequency[value] += 1;
i++;
}
基于此,我们正在寻找出现次数最多的字符。
maximum = 0;for(i=0; i<CHARS; i++){
if(frequency[i] > frequency[maximum])
maximum = i;
}
示例
下面给出的是在字符串中查找最大出现字符的 C 程序 -
#include <stdio.h>输出结果#define SIZE 100 // 最大字符串大小
#define CHARS 255 // 允许的最大字符数
int main(){
char string[SIZE];
int frequency[CHARS];
int i = 0, maximum;
int value;
printf("Enter the string:\n ");
gets(string);
for(i=0; i<CHARS; i++){
frequency[i] = 0; // 将所有字符的频率初始化为零
}
/* Finds frequency of each characters */
i=0;
while(string[i] != '\0'){
value = (int)string[i];
frequency[value] += 1;
i++;
}
/* Finds maximum frequency */
maximum = 0;
for(i=0; i<CHARS; i++){
if(frequency[i] > frequency[maximum])
maximum = i;
}
printf("Maximum occurrence character is '%c' = %d times.", maximum,
frequency[maximum]);
return 0;
}
执行上述程序时,会产生以下结果 -
Enter the string:tutorials point
Maximum occurrence character is 't' = 3 times.
以上是 C程序在字符串中查找最大出现的字符 的全部内容, 来源链接: utcz.com/z/317417.html