#include <iostream>
#include<cstring>
#include<ctype.h>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
using namespace std;
int main() {
int n;
cin>>n;
getchar();
while(n--){
char str[50];
gets(str);
int len=strlen(str);
int flag=0;
if(!isalpha(str[0])&&str[0]!='_'){
flag++;
}
for(int i=1;i<len;i++){
if(!isalnum(str[i])&&str[i]!='_'){
flag++;
}
}
if(flag==0){
cout<<"yes"<<endl;
}
else{
cout<<"no"<<endl;
}
}
return 0;
}
总结,本体考查了c语言里面的字符串组成。c语言里面合法字符串必须由字母、下划线、数字组成,而且首字符不能是数字,所以这里先对首字符进行了判断,用到了isalpha()函数,如果输入的首字符是数字的话,那么flag++ 。接下来对字符串进行遍历,用到了isalnum()函数,如果字符串没有出现字母、下划线、数字,那么flag++。最后输出即可。
最后祝愿大家顺利AC!