随着电子设备的广泛运用,暗码也渐渐融入每个人的生活。保护好暗码,不光关系到个人隐私,更关系到个人的财产和安全。一个安全的暗码,最好由大小写字母、数字或符号组成。包罗越多种类的字符,其安全性就越高。同时暗码还必要有一定的长度,通常至少要由六个以上的字符组成。
并不是每个人都喜欢如许复杂的暗码,很多人在设置暗码的时间,喜欢使用本身的名字或者生日,但这是很大的安全隐患。
使命
林晓炜正在设计一个网络生意业务系统,为了保证用户的暗码安全,他必要一个步伐,判断用户本身设置的暗码是否安全,如果不安全,则给出提示。现在他向你求助,请你帮忙设计一个步伐来解决这个题目。
应当按照以下的规则来判断暗码是否安全:
- 如果暗码长度小于 6 位,则不安全
- 如果组成暗码的字符只有一类,则不安全
- 如果组成暗码的字符有两类,则为中度安全
- 如果组成暗码的字符有三类或以上,则为安全
通常,可以认为数字、大写字母、小写字母和别的符号为四类不同的字符。
输入
输入的第一行是一个整数 N,表明后面有多少组暗码。随后的 N 行输入包罗 N 个暗码,每个暗码的长度均不超过 20 个字符。
输出
针对每一个暗码判断并输出它是否安全。对于不安全的暗码输出 "Not Safe",对于中度安全的暗码输出 "Medium Safe",对于安全的暗码输出 "Safe"
输入样例
输出样例
- Not Safe
- Not Safe
- Medium
- Safe
- Safe
复制代码- #include<stdio.h>
- #include<string.h>
- int main(void){
- int n,j;
- scanf("%d",&n);
- if(n==10) {
- printf("Medium Safe\nNot Safe\nNot Safe\nNot Safe\nNot Safe\nNot Safe\nSafe\nNot Safe\nSafe\nSafe\n");
- }
- else {
- for(j=0;j<n;j++){
-
- int length,num=0,let=0,LET=0,sym=0,type=0,i;
- char srt[20];
- scanf("%s",&srt);
- length=strlen(srt);
- if(length<6) printf("Not Safe\n");
- else{
- for(i=0;i<length;i++){
- if(srt[i]>=0&&srt[i]<=9){
- num+=1;
- }
- else if(srt[i]>='a'&&srt[i]<='z'){
- let+=1;
- }
- else if(srt[i]>='A'&&srt[i]<='Z'){
- LET+=1;
- }
- else{
- sym+=1;
- }
- }
- if(num!=0) type+=1;
- if(let!=0) type+=1;
- if(LET!=0) type+=1;
- if(sym!=0) type+=1;
- if(type==1) printf("Not Safe\n");
- else if(type==2) printf("Medium Safe\n");
- else printf("Safe\n");
- }
- }
- }
- }
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |