题解 | 表示数字

表示数字

https://www.nowcoder.com/practice/637062df51674de8ba464e792d1a0ac6

#include <stdio.h>
#include <ctype.h>
#include <string.h>

int __is_digit(char c);

int main()
{

    char str[100] = {'\0'};
    gets(str);
    int len = strlen(str);
    int i= 0;
    int start_flag =0;
    while(str[i]!='\0')
    {
        if(isdigit(str[i])&&i==0)
        {
            printf("*");
            // i++;
            // continue;
        }
        if(isdigit(str[i])&&i==len-1)
        {
            printf("%c*",str[i]);
            break;
        }
        if (__is_digit(str[i])&&!__is_digit(str[i+1])&&i+1<len)
        {
            printf("%c*",str[i]);
            i++;
            continue;
        }
        if (!__is_digit(str[i])&&__is_digit(str[i+1])&&i+1<len)
        {
            printf("%c*",str[i]);
            i++;
            continue;
        }
        {
            printf("%c",str[i]);
        }
        i++;
    }
    // if(start_flag)
    // {
    //     printf("*");
    // }
    return 0;
}

int __is_digit(char c){
    if(c>='0'&&c<='9')
        return 1;
    else
        return 0;
}

全部评论

相关推荐

神哥了不得:你简历字体有点不太协调呀,下面的字实在太小了呀,而且项目也不太行,建议换几个高质量的项目,面试会多很多
点赞 评论 收藏
分享
牛客765689665号:没有实习是硬伤,央国企看学历
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务