题解 第四章字符串| #统计字符#

统计字符

http://www.nowcoder.com/practice/4ec4325634634193a7cd6798037697a8

本题的自测和提交的测试点再次不一致

提交的测试点仅有一组数据,且没有要求"#"的结束符

采用的思路如下:

记录下要输出的符号,记录个数则根据ASCII符号为有限个的特点,将字符和数组标号对应

将出现次数,计入该字符为标号的数组中

#include <stdio.h>
#include <string.h>
#define MAX 81


int main()
{
    int ASCII_COUNT[128]={0};
    char TEST[6]={0},CArr[MAX]={0};
    //读取了第一行数据
    fgets(TEST, MAX, stdin);
    TEST[strlen(TEST)-1]='\0';
    //while(strcmp(TEST,"#")!=0)
    //本题再次出错
    {
        memset(ASCII_COUNT,0,sizeof(ASCII_COUNT));
        
        fgets(CArr, MAX, stdin);
        CArr[strlen(CArr)-1]='\0';
        for(int i=0;i<strlen(CArr);i++)
        {
            ASCII_COUNT[CArr[i]]++;
        }
        
        for(int i=0;i<strlen(TEST);i++)
        {
            printf("%c %d\n",TEST[i],ASCII_COUNT[TEST[i]]);
        }
        
        fgets(TEST, MAX, stdin);
        TEST[strlen(TEST)-1]='\0';
    }
    return 0;
}
王道机试指南刷题 文章被收录于专栏

计划刷完这本书

全部评论

相关推荐

比亚迪汽车新技术研究院 硬件工程师 总包21左右 硕士
点赞 评论 收藏
分享
头像
10-15 22:27
已编辑
门头沟学院 C++
罗格镇的小镇做题家:我投了hr打电话来说学历太低了不符合要求,建议投荣耀,结果荣耀也投了一定水花没有,非本211硕
投递华为等公司10个岗位
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务