網絡密鑰問題

網上流傳一句話:"常在網上飄啊,哪能不挨刀啊~"。其實要想能安安心心地上網其實也不難,學點安全知識就可以。

首先,我們就要設置一個安全的密碼。那什麼樣的密碼才叫安全的呢?一般來說一個比較安全的密碼至少應該滿足下面兩個條件:

(1).密碼長度大於等於8,且不要超過16。
(2).密碼中的字符應該來自下面“字符類別”中四組中的至少三組。

這四個字符類別分別爲:
1.大寫字母:A,B,C...Z;
2.小寫字母:a,b,c...z;
3.數字:0,1,2...9;
4.特殊符號:~,!,@,#,$,%,^;

給你一個密碼,你的任務就是判斷它是不是一個安全的密碼。

#include <stdio.h>
#include <string.h>
int main()
{
 int M,i,len,a,b,c,d;
 char p[17];
 scanf("%d",&M);
 getchar();
 while(M--)
 {
  gets(p);
  len=strlen(p);
  i=a=b=c=d=0;
  if(len<8||len>16)
   printf("NO\n");
  else
  {
   
   for(;i<len;i++)
   {
    if(p[i]>='0'&&p[i]<='9')
     a=1;
    else if(p[i]>='a'&&p[i]<='z')
     b=1;
    else if(p[i]>='A'&&p[i]<='Z')
     c=1;
    else if(p[i]=='~'||p[i]=='!'||p[i]=='@'||p[i]=='#'||p[i]=='$'||p[i]

=='%'||p[i]=='^')
     d=1;
    else
    {
     printf("NO\n");
     break;
    } 
   }
  }
  if(i==len)
  {
   if((a+b+c+d)>=3)
    printf("YES\n");
   else
    printf("NO\n");
  }
 }
 return 0;
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章