zoukankan      html  css  js  c++  java
  • oj 2024 C语言合法标识符

    Problem Description
    输入一个字符串,判断其是否是C的合法标识符。
     
    Input
    输入数据包含多个测试实例,数据的第一行是一个整数n,表示测试实例的个数,然后是n行输入数据,每行是一个长度不超过50的字符串。
     
    Output
    对于每组输入数据,输出一行。如果输入数据是C的合法标识符,则输出"yes",否则,输出“no”。
     
    Sample Input
    3
    12ajf
    fi8x_a
    ff ai_2
     
    Sample Output
    no
    yes
    no
     
    AC代码:
    #include<stdio.h>
    #include<string.h>
    int main()
    {
        //只能由字母、数字、下划线组成,且数字不能做开头
        int n;
        char bsf[50];
        scanf("%d", &n);
        getchar();
        while(n--)
        {
            int flag = 0;
            gets(bsf);
            int len = strlen(bsf);
            if(bsf[0] >= '0' && bsf[0] <= '9')
            {
                printf("no
    ");
                continue;
            }        
            for(int i = 0; i < len; i++)
            {
                if((bsf[i] >= '0' && bsf[i] <= '9' )|| (bsf[i] >= 'a' && bsf[i] <= 'z' )|| (bsf[i] >= 'A' && bsf[i] <= 'Z') || bsf[i] == '_' )
                {
                    flag ++;
                }    
                else
                {
                    printf("no
    ");
                    break;
                }
                    
            }
            if(flag == len)
            printf("yes
    ");
        } 
        return 0;
    }

    得考虑全C语言标识符的定义, 按照定义来做,考虑要全面.

    第一次上交想要投机取巧,看到第三个有个空格就只考虑若字符串里面含空格就输出no, 但是只符合输出样式的答案不一定就能AC。

    做题不能投机取巧

     
  • 相关阅读:
    DHCP和NAT
    Mongos WoW
    是否能在构造函数,析构函数中抛出异常?
    Lua Getter/Setter
    xLua
    基于模板特化的Lua自动绑定系统
    为什么有人说富坚义博有着殿堂级的画功?他的画功体现在哪儿呢? 关注者 10205 被浏览 2701670
    在Windows和MacOS下编译Lua
    解决warning MSB8012:问题
    setjmp和longjmp
  • 原文地址:https://www.cnblogs.com/witharush/p/9657664.html
Copyright © 2011-2022 走看看