Description
输入一个字符串,判断其是否是C的合法标识符。Input
输入数据包含多个测试实例,数据的第一行是一个整数n,表示测试实例的个数,然后是n行输入数据,每行是一个长度不超过50的字符串。Output
对于每组输入数据,输出一行。如果输入数据是C的合法标识符,则输出"yes",否则,输出“no”。Sample Input
3 12ajf fi8x_a ff ai_2Sample Output
no yes no
#include <stdio.h> #include <stdlib.h> #include"string.h" int main() { int n,m,i,j; char a[60]={'\0'},*p=a,x; scanf("%d",&n); scanf("%c",&x); for(j=1;j<=n;j++) { gets(a); m=strlen(a); i=m-9; if((*p=='_')||(*p>='A'&&*p<='Z')||(*p>='a'&&*p<='z')) {for(i=1;i<m;i++) {if((*(p+i)=='_')||(*(p+i)>='A'&&*(p+i)<='Z')||(*(p+i)>='a'&&*(p+i)<='z')||(*(p+i)>='0'&&*(p+i)<='9')) continue; else break; } } if(i>=m) printf("yes\n"); else printf("no\n"); } return 0; }