思路:
此題比較容易,只需要根據題目要就對字符進行替換即可
#include<iostream>
using namespace std;
struct User
{
string name,psw;
bool ischange;
}u[1005];
int main()
{
int k;
int cnt = 0;
cin>>k;
for(int i=0;i<k;i++)
{
cin>>u[i].name>>u[i].psw;
u[i].ischange = false;
int n = u[i].psw.size();
for(int j=0;j<n;j++)//對字符進行替換
{
if(u[i].psw[j] == '1')
{
u[i].psw[j] = '@';
u[i].ischange = true;
}
else if(u[i].psw[j] == '0')
{
u[i].psw[j] = '%';
u[i].ischange = true;
}
else if(u[i].psw[j] == 'l')
{
u[i].psw[j] = 'L';
u[i].ischange = true;
}
else if(u[i].psw[j] == 'O')
{
u[i].psw[j] = 'o';
u[i].ischange = true;
}
}
if(u[i].ischange)//計算有多少賬戶密碼被修改
cnt++;
}
if(cnt == 0)
{
if(k == 1)
cout<<"There is 1 account and no account is modified"<<endl;
else
cout<<"There are "<<k<<" accounts and no account is modified"<<endl;
}
else
{
cout<<cnt<<endl;
for(int i=0;i<k;i++)
{
if(u[i].ischange)
cout<<u[i].name<<" "<<u[i].psw<<endl;
}
}
return 0;
}
本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。