题解 | #密码检查#
密码检查
https://www.nowcoder.com/practice/f2fbd8f61c564ca0b5feaa63ab42dae5
#include <stdio.h> #include <string.h> int main() { //密码长度是否大于8位以及不能数字开头 int n = 0; scanf("%d", &n); while(n--) { char ch[100]; scanf("%s", ch); getchar(); int len = strlen(ch); if(len < 8 || ch[0] >= 0 && ch[0] <= 9) { printf("NO\n"); continue; } //是否符合至少出现三种类型中的两种 int i = 0; int flag1 = 0;//用来标记字符是否都是大写 int flag2 = 0;//用来标记字符是否都是小写 for(i = 0; i < len; i++) { if(ch[i] >= 'A' && ch[i] <= 'Z') flag1++; if(ch[i] >= 'a' && ch[i] <= 'z') flag2++; } if(flag1 == len || flag2 == len) { printf("NO\n"); } else { printf("YES\n"); } } return 0; }