SDUT-1246 C语言合法标识符

来源:互联网 发布:淘宝上传切好的详情页 编辑:程序博客网 时间:2024/06/05 00:30

C语言合法标识符

Time Limit: 1000MS Memory Limit: 65536KB
Submit Statistic Discuss

Problem Description

输入一个字符串,判断其是否是C的合法标识符。

Input

输入数据包含多个测试实例,数据的第一行是一个整数n,表示测试实例的个数,然后是n行输入数据,每行是一个长度不超过50的字符串。

Output

对于每组输入数据,输出一行。如果输入数据是C的合法标识符,则输出"yes",否则,输出“no”。

Example Input

312ajffi8x_aff  ai_2

Example Output

noyesno

Code

#include <stdio.h>#include <string.h>int main(){    char id[51];    int i,n,flag;    scanf("%d",&n);    getchar();    while(n--)    {        memset(id,'\0',sizeof(id));        flag=0;        gets(id);        int len=strlen(id);        if((id[0]>='a'&&id[0]<='z')||(id[0]>='A'&&id[0]<='Z')||id[0]=='_')        {            for(i=0; i<len; i++)            {                if((id[i]>='a'&&id[i]<='z')||(id[i]>='A'&&id[i]<='Z')||(id[i]>='0'&&id[i]<='9')||id[i]=='_')                    flag++;            }        }        if(flag==len)            printf("yes\n");        else            printf("no\n");    }    return 0;}