本题要求你帮助某网站的用户注册模块写一个密码合法性检查的小功能。该网站要求用户设置的密码必须由不少于6个字符组成,并且只能有英文字母、数字和小数点 .
,还必须既有字母也有数字。
输入第一行给出一个正整数 N(≤ 100),随后 N 行,每行给出一个用户设置的密码,为不超过 80 个字符的非空字符串,以回车结束。
对每个用户的密码,在一行中输出系统反馈信息,分以下5种:
Your password is wan mei.
;Your password is tai duan le.
;Your password is tai luan le.
;Your password needs shu zi.
;Your password needs zi mu.
。5
123s
zheshi.wodepw
1234.5678
WanMei23333
pass*word.6
Your password is tai duan le.
Your password needs shu zi.
Your password needs zi mu.
Your password is wan mei.
Your password is tai luan le.
#include<iostream> using namespace std; const int maxn = 110; int main(){ int n; cin >> n; string s; getchar(); while(n--){ getline(cin,s); //cin >> s; bool tag[4] = {false}; if(s.length() < 6){ cout << "Your password is tai duan le." << endl; continue; } for(int i = 0; i < s.length(); i++){ if(s[i] >= ‘0‘ && s[i] <= ‘9‘) tag[0] = true; else if((s[i] >= ‘a‘ && s[i] <= ‘z‘)||(s[i] >= ‘A‘ && s[i] <= ‘Z‘)) tag[1] = true; else if(s[i] == ‘.‘) tag[2] = true; else tag[3] = true; } if(tag[3]) cout <<"Your password is tai luan le." << endl; //tag[0] == 1表示有数字,tag[1] == 1表示有字母 else if(tag[1] == false) cout <<"Your password needs zi mu." << endl; else if(tag[0] == false)cout << "Your password needs shu zi." << endl; else cout <<"Your password is wan mei." << endl; for(int i = 0 ; i < 4; i++) tag[i] = false; } return 0; }
原文:https://www.cnblogs.com/wanghao-boke/p/10427471.html