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

 

 1 #include <stdio.h>
 2 #include <ctype.h>
 3  
 4 int main(){
 5     int n;
 6     char c;
 7     int i;
 8     int flag;
 9      
10     scanf("%d",&n);
11     getchar();
12      
13     while(n--){
14         i=0;
15         flag=0;
16         while((c=getchar())!='\n'){
17             if(i==0){
18                 if(c=='_' || isalpha(c)!=0)
19                     ;
20                      
21                 else
22                     flag=1;
23             }
24              
25             else{
26                 if(c=='_' || isalpha(c)!=0 || isdigit(c)!=0)
27                     ;
28                      
29                 else
30                     flag=1;
31             }
32                  
33             i++;
34         }
35          
36         if(flag==0)
37             printf("yes\n");
38              
39         else
40             printf("no\n");
41     }
42              
43     return 0;
44 }

 

posted @ 2014-10-27 15:39  zqxLonely  阅读(779)  评论(0编辑  收藏  举报