在VC++上编译成功了。
1.[文件] 测1.cpp ~ 1KB 下载(74)
//产生一个六位的密码(包含大小写字母和数字),首位为字母
#include
#include
#include
void main()
{
int i,num;
char str[6];
int seed=1;
char ch[4]="abc";
srand((unsigned)time(0));//用于产生动态seed,使每次产生的随机密码都不同
gl:
num=rand()%2;
switch(ch[num])
{
case 'a':
g1:
num=rand()%123;
if(num>96&&num<123)
str[0]=num;
else
goto g1;
break;
case 'b':
g2:
num=rand()%91;
if(num>64&&num<91)
str[0]=num;
else
goto g2;
break;
default :
goto gl;
break;
}
for(i=1;i<6;i++)
{
ll:
num=rand()%4;
switch(ch[num])
{
case 'a':
l1:
num=rand()%123;
if(num>96&&num<123)
str[i]=num;
else
goto l1;
break;
case 'b':
l2:
num=rand()%91;
if(num>64&&num<91)
str[i]=num;
else
goto l2;
break;
case 'c':
l3:
num=rand()%57;
if(num>47&&num<58)
str[i]=num;
else
goto l3;
break;
default :
goto ll;
break;
}
}
printf("随机生成的六位密码为:\n");
for(i=0;i<6;i++)
printf("%c",str[i]);
printf("\n");
getchar();
}