总结_杭电1004

题目大意:寻找最受欢迎的气球颜色。现输入一个正整数N,后跟N个颜色类单词;输出为出现频率最高的单词。

注意:N=0则程序终止,且每个单词字母数不超过15。

思路:设定一个字符型二维数组和一个整型一维数组。前者用于存储输入的字符串,再对字符串出现的次数做统计,并按列标对应的方式存储在整型数组中。

代码为

#include
#include
int main()
{
    char s[1001][16];
    int i , j , n ;
    while (scanf("%d" , & n) != EOF)
    {
        int max = 0 , dat[1001] = {0} ;
        if (n == 0)
            break;
        for(i = 0 ; i < n ; i ++)
            scanf("%s" , s[i]);
        for(i = 0 ; i < n ; i ++)
        {
            for(j = i ; j < n ; j ++)
            {
                if(strcmp(s[i] , s[j]) == 0)
                    dat[i]++;
            }
        }
        for(i = 0 ; i < n ; i ++)
        {
            if(dat[max] < dat[i])
                max = i;
        }
        printf("%s\n" , s[max]);
    }
    return 0;
}
PS:strcmp(字符串1,字符串2)  —— 字符串比较函数:若相等,函数返回0;若1<2,返回-1;若1>2,返回1。

你可能感兴趣的:(总结_杭电1004)