6楼的答案有点问题 比如输入2eee会显示合法 这就不对了 谁能改一下 或再给个答案
#include<stdio.h>
#include<string.h>
int main()
{
char str[10];
int i=0;
gets(str);
if(str[0]>='A'&&str[0]<='Z'||str[0]>='a'&&str[0]<='z'||str[0]=='_')
{
while(str[i]!='\0')
if(int(str[i])>=0&&int(str[i])<=255) i++;
}
if(i==strlen(str)) printf("valid!!\n");
else printf("invalid!!\n");
return 0;
}