時間限制: 1000 ms 空間限制: 262144 KB 具體限制
題目描述
給定一個不包含空白符的字符串,請判斷是否是C語言合法的標識符號(注:題目保證這些字符串一定不是C語言的保留字)。
C語言標識符要求:
1. 非保留字;
2. 只包含字母、數字及下劃線(“_”)。
3. 不以數字開頭。
輸入
一行,包含一個字符串,字符串中不包含任何空白字符,且長度不大於20。
輸出
一行,如果它是C語言的合法標識符,則輸出yes,否則輸出no。
樣例輸入
RKPEGX9R;TWyYcp
樣例輸出
no
題記:
字符串處理的水題。
C++程序如下:
#include <iostream>
#include <string>
using namespace std;
string s;
int main(void)
{
int len, flag = 1;
cin >> s;
len = s.size();
if(s[0] >= '0' && s[0] <= '9'){
cout << "no" << endl;
}
else{
for(int i=1; i<len; i++){
if(s[i] >= 'a' && s[i] <= 'z') ;
else if(s[i] >= 'A' && s[i] <= 'Z') ;
else if(s[i] >= '0' && s[i] <= '9') ;
else if(s[i] == '_') ;
else
flag=0;
}
if(flag)
cout<<"yes"<<endl;
else
cout<<"no"<<endl;
}
return 0;
}