2个回答
展开全部
#include <stdio.h>
#include <string.h>
int Check(char*);
int CheckSpecial(char const);
void main(){
char szInput[51];
start:
printf("Input Your Code(Less Then 50 Letters Numbers Or Symbol):\n");
scanf("%s",szInput);
if(strcmp(szInput,"END")==0){
return;
}
if(Check(szInput)){
printf("YES\n");
}else{
printf("NO\n");
}
goto start;
}
int Check(char *szInput){
unsigned nFlag=0;
unsigned int nIndex=0;
int nFlagNum=0;
for (;szInput[nIndex];nIndex+=1){
if(szInput[nIndex]<='z'&&szInput[nIndex]>='a')
nFlag|=0x01;
if(szInput[nIndex]<='Z'&&szInput[nIndex]>='A')
nFlag|=0x02;
if(szInput[nIndex]<='9'&&szInput[nIndex]>='0')
nFlag|=0x04;
if(CheckSpecial(szInput[nIndex]))
nFlag|=0x08;
}
if(nIndex<8)
return 0;
for (nIndex=1;nIndex<=0x08;nIndex<<=1){
if(nIndex&nFlag){
nFlagNum+=1;
}
}
if(nFlagNum>=3)
return 1;
else
return 0;
}
int CheckSpecial(char const cInput){
static char const szSpecial[]="~!@#$%^&*()-=";
int nIndex=0;
for (;szSpecial[nIndex];nIndex+=1){
if(cInput==szSpecial[nIndex])
return 1;
}
return 0;
}
#include <string.h>
int Check(char*);
int CheckSpecial(char const);
void main(){
char szInput[51];
start:
printf("Input Your Code(Less Then 50 Letters Numbers Or Symbol):\n");
scanf("%s",szInput);
if(strcmp(szInput,"END")==0){
return;
}
if(Check(szInput)){
printf("YES\n");
}else{
printf("NO\n");
}
goto start;
}
int Check(char *szInput){
unsigned nFlag=0;
unsigned int nIndex=0;
int nFlagNum=0;
for (;szInput[nIndex];nIndex+=1){
if(szInput[nIndex]<='z'&&szInput[nIndex]>='a')
nFlag|=0x01;
if(szInput[nIndex]<='Z'&&szInput[nIndex]>='A')
nFlag|=0x02;
if(szInput[nIndex]<='9'&&szInput[nIndex]>='0')
nFlag|=0x04;
if(CheckSpecial(szInput[nIndex]))
nFlag|=0x08;
}
if(nIndex<8)
return 0;
for (nIndex=1;nIndex<=0x08;nIndex<<=1){
if(nIndex&nFlag){
nFlagNum+=1;
}
}
if(nFlagNum>=3)
return 1;
else
return 0;
}
int CheckSpecial(char const cInput){
static char const szSpecial[]="~!@#$%^&*()-=";
int nIndex=0;
for (;szSpecial[nIndex];nIndex+=1){
if(cInput==szSpecial[nIndex])
return 1;
}
return 0;
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
改变就这样吧!
简洁!
#包括中
国际主要()
{
整数A,B,C;
为(α= 0;一个<= 9,A + +)
为(B = 0,B <= 9; B + +)
为(C = 0,C < = 9,C + +)
的printf(“%D%D \ t”的,A,B,C);
#包括中
国际主要()
{
诠释三;
字符M,B;
为(M ='A',M> ='A'&&米<='Z'; M + +)
为(B ='A',B>; ='A'B <='Z',B + +)
为(C = 0,C <= 9; C + +)
的printf(“%C%C%D \ t%C%C%D \ t%D%C%C \ t%D%C%C \ t%C%D%C \ t%C%B%C \ N“,M,B,C,B,M,C,C, M,B,C,B,M,B,C,M,M,B,C);
你试试吧,这样做,每一次输出两者的结合。
简洁!
#包括中
国际主要()
{
整数A,B,C;
为(α= 0;一个<= 9,A + +)
为(B = 0,B <= 9; B + +)
为(C = 0,C < = 9,C + +)
的printf(“%D%D \ t”的,A,B,C);
#包括中
国际主要()
{
诠释三;
字符M,B;
为(M ='A',M> ='A'&&米<='Z'; M + +)
为(B ='A',B>; ='A'B <='Z',B + +)
为(C = 0,C <= 9; C + +)
的printf(“%C%C%D \ t%C%C%D \ t%D%C%C \ t%D%C%C \ t%C%D%C \ t%C%B%C \ N“,M,B,C,B,M,C,C, M,B,C,B,M,B,C,M,M,B,C);
你试试吧,这样做,每一次输出两者的结合。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询