1935: C语言合法标识符
时间限制: 1 Sec 内存限制: 64 MB 提交: 39 解决: 20 [ 提交][ 状态][ 讨论版]题目描述
输入一个字符串,判断其是否是C的合法标识符。输入
输入数据包含多个测试实例,数据的第一行是一个整数n,表示测试实例的个数,然后是n行输入数据,每行是一个长度不超过50的字符串。输出
对于每组输入数据,输出一行。如果输入数据是C的合法标识符,则输出"yes",否则,输出“no”。样例输入
3 12ajf fi8x_a ff ai_2
样例输出
no yes no
#include <iostream>
#include <cstring>
#include <cstdio>
using namespace std;
int zm(char a)
{
return(a>='a'&&a<='z'||a>='A'&&a<='Z');
}
int sz(char a)
{
return (a>='0'&&a<='9');
}
int xh(char a)
{
return a=='_';
}
int main()
{
int n,i;
cin>>n;
cin.ignore();
char a[999];
for(i=1;i<=n;i++)
{
gets(a);
int c=0;
if(zm(a[0])||xh(a[0])){c++;}
int m=strlen(a),j;
for(j=1;j<m;j++)
{
if(zm(a[j])||sz(a[j])||xh(a[j])){continue;}
else break;
}
if(j==m&&c==1){cout<<"yes"<<endl;}
else cout<<"no"<<endl;
}
return 0;
}
ytu 1935: C语言合法标识符
最新推荐文章于 2022-12-02 17:03:30 发布