求助!!!
#include<bits/stdc++.h>
using namespace std;
char a[10010];
char b[10010];
bool is() {
int len= strlen(b);
bool te = false;//是否有特殊字符
int has1 = 0;//是否有数字
int has2 = 0;//是否有小写字母
int has3 = 0;//是否有大写字母
if (len<6||len>12)
{
return false;
}
for(int i = 0;i<len;i++)
{
if(isdigit(b[i]))
{
has1 = 1;
}
else if(islower(b[i]))
{
has2 = 1;
}
else if(isupper(b[i]))
{
has3 = 1;
}
if(b[i] == '!'||b[i] == '@'||b[i] == '#'||b[i] == '$')
{
te = true;
}
if((has1+has2+has3)>=2)
{
return true;
}
}
if(!(te))
{
return false;
}
return (has1+has2+has3)>=2;
}
int main() {
cin>>a;
int cur = 0;
for(int i = 0;i<strlen(a);i++)
{
if(a[i] == ',')
{
if(is())
{
b[cur] = '\0';
cout<<b<<endl;
cur = 0;
continue;
}
}
else
{
b[cur] = a[i];
cur++;
}
}
return 0;
}