C语言实验——合法的C标识符
时间: 1ms 内存:64M
描述:
给出一个标识符,请你判断它是否是C语言合法的标识符。
输入:
输入一个标识符。
输出:
判断是否合法,如果是输出YES,否则输出NO。
示例输入:
123You
示例输出:
NO
提示:
参考答案(内存最优[748]):
#include<stdio.h>
#include<string.h>
int main()
{
int i,flag=1;
char c[100];
scanf("%s",c);
if(c[0]>='0'&&c[0]<='9')
flag=0;
else
for(i=0;c[i];i++)
if(!(c[i]>='a'&&c[i]<='z'||c[i]>='A'&&c[i]<='Z' ||c[i]>='0'&&c[i]<='9'||c[i]=='_'))
{
flag=0;
break;
}
if(flag)
printf("YES\n");
else printf("NO\n");
}
参考答案(时间最优[0]):
#include<stdio.h>
#include<string.h>
int main()
{
char a[1000];
int i,j,k;
gets(a);
k=strlen(a);
for(i=0; i<k; i++)
{
if('a'<=a[0]&&a[0]<='z'||'A'<=a[0]&&a[0]<'Z'||a[0]=='_')
;
else
{
printf("NO");
break;
}
if('a'<=a[i]&&a[i]<='z'||'A'<=a[i]&&a[i]<'Z'||a[i]=='_'||47<a[i]&&a[i]<58)
;
else
{
printf("NO");
break;
}
}
if(i==k)
printf("YES");
return 0;
}
题目和答案均来自于互联网,仅供参考,如有问题请联系管理员修改或删除。