hdoj2024C语言合法标识符


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
 

Author
lcy
代码:
#include
#include
int main()
{
 int n,b;
 char a[100];
 scanf("%d",&n);
 getchar();
 while(n--)
 {
  int sum=0;
  gets(a);
  b=strlen(a);
  for(int i=0;i   {
   if(i==0)
   {
   if((a[i]>='A'&&a[i]<='Z')||(a[i]>='_'&&a[i]<='z'))
   sum++; 
   }
   else
   {
   if((a[i]>='A'&&a[i]<='Z')||(a[i]>='_'&&a[i]<='z')||(a[i]>='0'&&a[i]<='9'))
   sum++;
  }
  }
  if(sum==b)
  printf("yes\n");
  else
  printf("no\n");
 }
 return 0;
}
思路:
主要是理解c语言合法标示符是什么意思,也就是

C语言合法标识符:

1.只能以大小写字母或下划线开始;

2.可以由大小写字母,下划线或数字(0~9)组成;

3.不能是c里面的关键字

理解后就简单了。

你可能感兴趣的:(HDOJ)