SCUT Training 20170920 Problem C

来源:互联网 发布:淘宝正常一天能出几单 编辑:程序博客网 时间:2024/05/16 04:00

原题:http://acm.hdu.edu.cn/showproblem.php?pid=2024


思路:

字符串第一个只能是下划线和字母,后面只能是下划线、字母和数字。逐位检查就可以了。


源代码:

#include <iostream> #include <string>#include <cstring>using namespace std;int main(){    int n,i,len,b;    char a[50];    cin>>n;    getchar();    for (i=0;i<n;i++)    {        cin.getline(a,50,'\n');        len=strlen(a);        if (a[0]=='_' ||(a[0]>='A' && a[0]<='Z') || (a[0]>='a' && a[0]<='z'))        {            for (b=1;b<len;b++)            {                if((a[b]=='_' )||(a[b]>='A' && a[b]<='Z') || (a[b]>='a' && a[b]<='z') ||(a[b]>='0' && a[b]<='9')) continue;                else break;            }            if (b==len) cout<<"yes"<<endl;            else cout<<"no"<<endl;        }        else cout<<"no"<<endl;    }    return 0;}