首页 > 编程语言 > 详细

算法初步——哈希表B1042字符统计(注意如何读取带空格的字符串)

时间:2020-01-06 22:02:53      阅读:74      评论:0      收藏:0      [点我收藏+]

技术分享图片

 

 

#include<math.h>
#include <cstring>
#include <cstdio>
const int MAX_LEN = 1010;
char str[MAX_LEN];
int hashTable[30] = {0};
int main(){
    fgets(str,1010,stdin);
    int len = strlen(str);
    for(int i =0;i<len;++i){
        if(str[i] >=a && str[i] <= z){
            hashTable[str[i] - a]++;
        }else if(str[i] >= A && str[i] <= Z){
            hashTable[str[i] - A]++;
        }
    }
    int  k = 0;
    for(int i =0;i<26;++i){
        if(hashTable[i] > hashTable[k]){
            k = i;
        }
    }
    printf("%c %d\n",a+k,hashTable[k]);
    //system("pause");
    return 0;
} 

卡在输入带空格的字符串上了。 

读取带空格的字符串不能使用scanf 和 cin 。 可以使用gets, 但在PAT系统里 gets编译出错, 所以只能使用 fgets 

技术分享图片

算法初步——哈希表B1042字符统计(注意如何读取带空格的字符串)

原文:https://www.cnblogs.com/JasonPeng1/p/12158598.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!