题目描述
输入一个字符串,判断其是否是C的合法标识符。
输入要求
输入一个长度不超过50的字符串。
输出要求
如果输入数据是C语言的合法标识符,则输出yes,否则,输出no。
输入样例
fi8x_a
输出样例
yes
提示
来源
NBU OJ
#include <stdio.h>
#include <string.h>
int main()
{
char a[51];
int len,count=0,i;
gets(a);
len=strlen(a);
if(!(a[0]>='a'&&a[0]<='z')&&!(a[0]>='A'&&a[0]<='Z')&&a[0]!='_')
{
printf("no\n");
}//只能以字母或下划线开头
else
{
for(i=1;i<len;i++)
{
if(!(a[i]>='a'&&a[i]<='z')&&!(a[i]>='A'&&a[i]<='Z')&&!(a[i]>='0'&&a[i]<='9')&&a[i]!='_')
{
printf("no\n");
break;
}
else
{
count++;
}
}//只能由字母、下划线、数字组成
if(count==len-1)
{
printf("yes\n");
}
}
return 0;
}