杭电acm2024

2024-12-28 05:11:05
推荐回答(2个)
回答1:

#include
using namespace std;

bool ischar(char ch)
{
return ch>='a'&&ch<='z' || ch>='A'&&ch<='Z';
}

bool isnum(char ch)
{
return ch>='0'&&ch<='9';
}
bool judge(char *a)
{
if(a[0]!='_'&&!ischar(a[0])) return false;
for(int i=1; a[i]; ++i)
if(a[i]!='_'&&!ischar(a[i])&&!isnum(a[i])) return false;
return true;
}
int main()
{
char a[100];
int text, i, j;
cin>>text;
getchar();
for(i=1; i<=text; ++i)
{
cin.getline(a, 100);
if(judge(a)) cout<<"yes\n";
else cout<<"no\n";
}
return 0;
}

回答2:

你定义的数组太少。。人家最多是50个字符,字符数组要加上结束符,所以应该定义str[51],代码我没去看
还有测试数据不一定少于100个