题解 | #找出字符串中第一个只出现一次的字符#

找出字符串中第一个只出现一次的字符

http://www.nowcoder.com/practice/e896d0f82f1246a3aa7b232ce38029d4

#include <stdio.h>

int main()
{
    char str[1000] = {0};
    char c = '0';
    gets(str);
    int len = strlen(str);
    int array[len];
    memset(array, 0, len*sizeof(int));
    for(int i = 0; i < len; i++)
    {
        c = str[i];
        for(int j = 0; j < len; j++)
        {
            //printf("c = [%c], str[%d] = [%c]\n", c, j, str[j]);
            if(c == str[j])
            {
                array[i]++;
            }
        }
    }
    int flag = 0;	//标志位,标识是否有仅出现一次的字符
    for(int i = 0; i < len; i++)
    {
        if(array[i] == 1)	//第一次为1,说明为第一个仅出现一次的字符
        {
            flag++;
            printf("%c\n", str[i]);
            break;
        }
    }
    c = '-1';
    if(flag == 0)
    {
        printf("%d\n", -1);
    }
    
    return 0;
}
全部评论

相关推荐

不愿透露姓名的神秘牛友
昨天 18:54
点赞 评论 收藏
分享
点赞 评论 收藏
分享
10-30 22:18
已编辑
毛坦厂中学 C++
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务