我有一个任务,找不到解决方案。
在输入中有一个数字“ n”,其中包含稍后将要键入的字符串数。然后是一个字符串,一个接一个。它被认为是密码。字符串(密码)必须包含一个低位拉丁字符,一个高位拉丁字符和一个数字。
如果字符串仅包含小写字符,则其中的一些字符需要用大写字母和数字替换,例如:aaaaaa-> Aaaaa1
字符串的长度需要保持不变。
如果输入的字符串符合上述条件,则应在输入时将其打印出来。
这是我用C ++编写的代码... 我缺少替换所需字符的方法。 任何帮助将不胜感激。
#include <iostream>
#include <string>
using namespace std;
int main()
{
int n;
cin >> n;
string s;
int br1=0, br2=0, br3=0;
for(int i=0;i<n;i++)
{
cin >> s;
for(int j=0;j<s.length();j++)
{
if(s[j]>='a' && s[j]<='z')
br1++;
else if(s[j]>='A' && s[j]<='Z')
br2++;
else if(s[j]>='0' && s[j]<='9')
br3++;
}
if(br1 && br2 && br3)
cout<<s;
//else
}
return 0;
}