问题链接: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 "); else printf("no "); return 0; }