问题链接:CCF NOI1079 合法C标识符。
时间限制: 1000 ms 空间限制: 262144 KB
题目描述
给定一个不包含空白符的字符串,请判断是否是C语言合法的标识符号(注:题目保证这些字符串一定不是C语言的保留字)。
C语言标识符要求:
1. 非保留字;
2. 只包含字母、数字及下划线(“_”)。
3. 不以数字开头。
输入
一行,包含一个字符串,字符串中不包含任何空白字符,且长度不大于20。
输出
一行,如果它是C语言的合法标识符,则输出yes,否则输出no。样例输入
RKPEGX9R;TWyYcp
样例输出
no
数据范围限制
提示
问题分析
这是字符串判定的问题,直接判定即可。
程序说明
空语句的妙用,你懂得。
要点详解
- C语言中,空语句怎么用,就看这个程序吧。
- 使用库函数来编写代码,通常可以使得程序更加简洁。
参考链接:(略)。
100分通过的C语言程序:
#include <stdio.h>
#include <string.h>
#include <ctype.h>
#define N 20
char word[N+1];
int main(void)
{
int flag, len, i;
scanf("%s", word);
flag = 1;
if(isalpha(word[0]) || word[0] == '_')
;
else
flag = 0;
len = strlen(word);
for(i=0; flag && i<len; i++) {
if(isalnum(word[i]) || word[i] == '_')
;
else
flag = 0;
}
if(flag)
printf("yes\n");
else
printf("no\n");
return 0;
}