判断字符类型
约 8 分钟
判断字符属于哪一类,就是看它的编号落在哪一段区间里:
- 是数字:
'0' <= c && c <= '9' - 是小写字母:
'a' <= c && c <= 'z' - 是大写字母:
'A' <= c && c <= 'Z'
char c;
bool isDigit = (c >= '0' && c <= '9');
bool isLower = (c >= 'a' && c <= 'z');
bool isUpper = (c >= 'A' && c <= 'Z');
bool isLetter = isLower || isUpper; // 是字母:两段任一
标准库里 isdigit、isalpha、islower、isupper(在 <cctype> 中)能一步搞定,考试手写区间判断也完全够用。单次判断 。
两个高频坑:一是连接符要用 &&(同时满足两个边界),写成 || 会永远为真;二是区间是闭区间,两端的 '0'、'9'、'a'、'z' 本身都算在内,用 <= 而不是 <。想判断"是不是字母",把大写、小写两段用 || 连起来即可。
小纸条
写出"判断是不是大写字母"的条件。
登录 后可看答案