题解 | #字符个数统计#

字符个数统计

https://www.nowcoder.com/practice/eb94f6a5b2ba49c6ac72d40b5ce95f50

解题思路:

创建0~128字符的字典,里面包含字符和字符是否出现过的标志位

lib[128][2] [x][0]存字符,[x][1]存字符是否出现过的标志位(未出现为0,出现为1)

#include <stdio.h>
#include <string.h>
int main() {
    int lib[128][2]={0};
    int i=0,num=0,j=0,S_num=0;
    int arry[500]={'\0'};
    for(i=0;i<128;i++)
    {
        lib[i][0]=i;
    }
    i=0;
    while(scanf("%c",&arry[i])!=EOF)//scanf非空就继续
    {
        if(arry[i]=='\n')//遇到换行符就继续
        {
            break;
        }
        i++;
    }
    S_num=i;//接受的字符串长度
    for(i=0;i<S_num;i++)
    {
        for(j=0;j<128;j++)
        {
            if(lib[j][0]==arry[i])//判断字符是否在字典中
            {
                if(lib[j][1]==1)//判断字符是否出现过,如果出现就跳出循环
                {
                    break;
                }
                else{//字符没有出现,对应标志位置1,计数变量自增1
                    lib[j][1]=1;
                    num++;
                }
            }
        }
    }
    printf("%d",num);//输出计数变量的值
    return 0;
}

全部评论

相关推荐

不愿透露姓名的神秘牛友
昨天 15:39
点赞 评论 收藏
分享
Gaynes:查看图片
点赞 评论 收藏
分享
king122:专业技能不要写这么多,熟悉和熟练你经不住问,排版有些难看,中间的空隙搞小一点,项目描述的话感觉是从课程中抄下来的,改一改吧,不然烂大街了,每个项目都写一两点,用什么技术实现了什么难点,然后再写一些数字上去像时间又花了90%这样,这样面试会多一些,如果觉得自己的项目还是不够用的话,我有几个大厂最近做过的实习项目,感兴趣的话可以看我简介中的项目地址
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务