题目描述
循环输入。每组输入为一个长度不超过80的字符串,判断它是否是C语言合法标识符。没有任何输入时,程序结束。C语言合法标识符需要满足如下条件:
(1)出现空格(或者tab)非法;
(2)首字符不能是数字;
(3)中间不能出现空格
(4)字符集只有 数字、_、大写字母、小写字母;
解题思路
第一步
对于输入的字符串,我们要先看一下它的长度是否是不超过80。
第二步
判断是否是空串。(这里比较巧妙,因为在判断空串的同时,可以顺便判断字符串是不是首字符开头),这一步,当时自己是处理不了的。💔
第三步
判断该字符串中是否包含空格或者tab
第四步
由于特殊情况我们都已经判断了,那么我们接下来只需要判断这个字符串中是否只是包含数字,字母和下划线即可。
解题代码
#include <stdio.h>
#include <string.h>
#define MAXLENGTH 80
#define MAX 999
char str[100];
int is_space_or_tab(char c)
{
return c == ' ' || c == ' ';
}
int isLegal(