Ç - 查找字符数组最常见的元素 [英] C - Find most frequent element in char array

查看:95
本文介绍了Ç - 查找字符数组最常见的元素的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在开发一个小功能在(char)的阵列来显示最常见的字符。
这是我到目前为止已经完成,但我觉得我的错了。

i'm developing a little function to display the most frequent character in a (char) array. This is what I've accomplished so far, but I think i'm on the wrong way.

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main()
{

char test[10] = "ciaociaoci";
max_caratt(test, 10);

}

int max_caratt(char input[], int size)
{
int i;
char max[300];
max[0] = input[0];

for (i=0; i<size; i++)
{

    if(strncmp(input,input[i],1) == 1)
    {
        printf("occourrence found");
        max[i] = input[i];
    }


}

}

任何帮助吗?

推荐答案

其实,正确的code是这样的。结果
这只是一个纠正IntermediateHacker的下面片断的版本。

Actually, the correct code is this.
It's just a corrected version of IntermediateHacker's below snippet.

void main()
{

int array[255] = {0}; // initialize all elements to 0

char str[] = "thequickbrownfoxjumpedoverthelazydog";

int i, max, index;

for(i = 0; str[i] != 0; i++)
{
   ++array[str[i]];
}


// Find the letter that was used the most
max = array[0];
index = 0;
for(i = 0; str[i] != 0; i++)
{
     if( array[str[i]] > max)
     {
         max = array[str[i]];
         index = i;
     }
}

printf("The max character is: %c \n", str[index]);

}

这篇关于Ç - 查找字符数组最常见的元素的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆