B2155 合法 C 标识符
欢迎报名洛谷网校,期待和大家一起进步!
本题考察字符串。
我们首先读入字符串
char c0 = s[0];
if (!((c0 >= 'A' && c0 <= 'Z') || (c0 >= 'a' && c0 <= 'z') || c0 == '_'))
ok = false;
再检查
for (int i = 1; ok && i < s.length(); ++i) {
char c = s[i];
bool isLetter = (c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z'); // 大小写字母
bool isDigit = (c >= '0' && c <= '9'); // 数字
bool isUnder = (c == '_'); // 下划线
if (!(isLetter || isDigit || isUnder))
ok = false;
}