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
code:
1 Code Render Status : Rendered By HDOJ G++ Code Render Version 0.01 Beta
2
3 #include<cmath>
4 #include<iostream>
5 using namespace std;
6
7 bool judge(string &s)
8 {
9 if(!((s[0]>='a'&&s[0]<='z')||(s[0]>='A'&&s[0]<='Z')||s[0]=='_'))
10 return 0;
11 for(int i=1;s[i]!=0;i++)
12 {
13 if(!((s[i]>='a'&&s[i]<='z')||(s[i]>='A'&&s[i]<='Z')||s[i]=='_'||(s[i]<='9'&&s[i]>='0')))
14 return 0;
15 }
16 return 1;
17 }
18
19 int main(){
20 int n,m,c;
21 int i,j,k;
22 string s;
23 cin >> n;
24 getchar();
25 for(i=0;i<n;i++)
26 {
27 getline(cin, s);
28 if(judge(s))
29 cout << "yes"<<endl;
30 else
31 cout << "no"<<endl;
32 }
33 return 0;
34 }