杭电acm2024
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
#include<stdio.h>
#include<string.h>
int main()
{
int n,m,i;char str[100];
scanf("%d",&n);getchar();
while(n--)
{
gets(str);
m=strlen(str);
if(str[0]<'0'||str[0]>'9')
{
for(i=0;i<m;i++)
{
if(str[i]!='_'&&(str[i]<'0'||str[i]>'9')&&(str[i]<'a'||str[i]>'z')&&(str[i]<'A'||str[i]>'Z'))
{printf("no\n");break;}
}
if(i==m)printf("yes\n");
}
else printf("no\n");
}
}