hdu2024

这题目感觉不是很严谨,如果是关键字的话也是不能作为合法标识符的,但是这个不用检测,就算要检测也会很费劲,还得用字符串匹配,而且还得知道一共都有哪些关键字,太麻烦了,所以出题人原意就是检查大小写字母数字和下划线就OK了。

 1 #include <stdio.h>
 2 #include <string.h>
 3 int main(){
 4     int n;
 5     int i;
 6     int sign;
 7     char str[10000];
 8     while(~scanf("%d",&n)){
 9         getchar();
10         while(n--){
11             sign=0;
12             gets(str);
13             if( (str[0]>='a'&&str[0]<='z')||(str[0]>='A'&&str[0]<='Z')||str[0]=='_' ){
14                 for(i=1;i<strlen(str);++i){
15                     if(   (str[i]>='a'&&str[i]<='z')||(str[i]>='0'&&str[i]<='9')||(str[i]=='_')
16                         ||(str[i]>='A'&&str[i]<='Z')
17                        ){
18                         continue;
19                     }else {printf("no
");sign=1;break;}
20                 }
21             }else {printf("no
");continue;}
22             if(sign==0)  printf("yes
");
23         }
24     }
25     return 0;
26 }
原文地址:https://www.cnblogs.com/symons1992/p/3405157.html