您的位置:首页 > 编程语言 > C语言/C++

杭电 acm 2024 C语言合法标识符

2018-03-15 11:42 246 查看
C语言合法标识符
Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 83862    Accepted Submission(s): 32329

Problem Description

输入一个字符串,判断其是否是C的合法标识符。

 

Input

输入数据包含多个测试实例,数据的第一行是一个整数n,表示测试实例的个数,然后是n行输入数据,每行是一个长度不超过50的字符串。

 

Output

对于每组输入数据,输出一行。如果输入数据是C的合法标识符,则输出"yes",否则,输出“no”。

 

Sample Input

3
12ajf
fi8x_a
ff  ai_2

 

Sample Output

no
yes
no

 

Author

lcy

#include<iostream>
#include<string>
using namespace std;
int main()
{
string a;
int n;
cin >> n;
getchar();
while (n--)
{
getline(cin, a);
bool flag = true;
if (a[0]>='0'&&a[0]<='9')
{
flag = false;
cout << "no" << endl;
continue;
}
for (int i = 0; i < a.size(); i++)
{
if (!(a[i] == '_' || (a[i] >= '0'&&a[i] <= '9') || ('A' <= a[i] && a[i] <= 'Z') || ('a' <= a[i] && a[i] <= 'z')))
{
flag = false;
cout << "no" << endl;
break;
}
}
if (flag)
cout << "yes" << endl;
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: