#include<iostream>
#include<String.h>
using namespace std;
int main()
{
int n,i,flag,j;
char text[51];
scanf("%d",&n);//整型的输入scanf也会把回车输入在流中
getchar();//吸收回车
while(n--)
{
flag=0;
i=0;
gets(text);
j=strlen(text);
for(i=0;i<j;i++)
{
if(i==0)
{
if(!((text[i]<='Z'&&'A'<=text[i])||(text[i]<='z'&&'a'<=text[i])||text[i]=='_'))
{
flag=1;
break;
}
}
else if(!((text[i]<='Z'&&'A'<=text[i])||(text[i]<='z'&&'a'<=text[i])||(text[i]<='9'&&'0'<=text[i])||text[i]=='_'))
{
flag=1;
break;
}
}
if(flag)
cout<<"no"<<endl;
else
cout<<"yes"<<endl;
}
}
tip:
1. 用scanf()输入,要注意输入内容后回车的处理,通常用getchar()处理。
2. gets()输入一段字符串,内容后面的回车会自动清楚,不会滞留在输入流内存中,且也不会作为内容保存在变量中。
3. 用strlen来返回字符串长度,需要头文件:#include<String.h>。