题解 | #密码强度等级#

密码强度等级

http://www.nowcoder.com/practice/52d382c2a7164767bca2064c1c9d5361

#include<stdio.h> int main() { char a[300]; gets(a); int i,j,n,sum[7]={0}; n=strlen(a); if(n<=4) sum[0]=5; else if(n>=5&&n<=7) sum[0]=10; else if(n>=8) sum[0]=25; for(i=0;i<n;i++) { if(a[i]>='a'&&a[i]<='z') sum[1]=10;
} for(i=0;i<n;i++) { if(a[i]>='A'&&a[i]<='Z') sum[2]=10;
} int m=0; for(i=0;i<n;i++) { if(a[i]>=0x21&&a[i]<=0x2F||a[i]>=0x3A&&a[i]<=0x40||a[i]>=0x5B&&a[i]<=0x60||a[i]>=0x7B&&a[i]<=0x7E) m++;
} if(m==0) sum[3]=0; else if(m==1) sum[3]=10; else if(m>1) sum[3]=25; int p=0; for(i=0;i<n;i++) { if(a[i]>='0'&&a[i]<='9') p++;
} if(p==0) sum[4]=0; else if(p==1) sum[4]=10; else if(p>1) sum[4]=20; if(sum[1]!=0&&sum[2]!=0&&sum[3]!=0&&sum[4]!=0) sum[5]=5; else if(sum[1]==0&&sum[2]!=0&&sum[3]!=0&&sum[4]!=0||sum[1]!=0&&sum[2]==0&&sum[3]!=0&&sum[4]!=0) sum[5]=3; else if(sum[1]==0&&sum[2]==0&&sum[3]!=0&&sum[4]!=0) sum[5]=2; for(i=0;i<6;i++) { sum[6]+=sum[i]; } if (sum[6]>=90) printf("VERY_SECURE"); else if (sum[6]>=80&&sum[6]<90) printf("SECURE"); else if (sum[6]>=70&&sum[6]<80) printf("VERY_STRONG"); else if (sum[6]>=60&&sum[6]<70) printf("STRONG"); else if (sum[6]>=50&&sum[6]<60) printf("AVERAGE"); else if (sum[6]>=25&&sum[6]<50) printf("WEAK"); else if (sum[6]>=0&&sum[6]<25) printf("VERY_WEAK"); return 0; }

全部评论

相关推荐

09-13 08:41
服装/纺织设计
那一天的Java_J...:你第一次参加面试吗
点赞 评论 收藏
分享
09-01 11:31
门头沟学院 Java
buul:七牛云的吧,感觉想法是好的,但是大家没那么多时间弄他这个啊。。。不知道的还以为他是顶尖大厂呢还搞比赛抢hc,只能说应试者的痛苦考察方是无法理解的,他们只会想一出是一出
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务