c++随机输入8位密码(大小写、数字)

来源:百度知道 编辑:UC知道 时间:2024/05/21 11:51:37
#include<iostream>
#include<conio.h>
#include<cstdlib>
#include<ctime>
#include<limit>
#include<cctype>
using namespace std;

int main(){
char ch='a';
int n=1;
srand(static_cast<unsigned int>(time(NULL)));

for (;n<=8; n++){
ch=static_cast<char>(rand());
if(!isalnum(ch)) continue;
cout<<ch;
}

cout<<" ";

getch();
return 0;
}

为什么不对?

这样改:

#include<iostream>
#include<conio.h>
#include<cstdlib>
#include<ctime>
#include<limit>
#include<cctype>
using namespace std;

int main(){
unsigned char ch='a';
int n=1;
srand(static_cast<unsigned int>(time(NULL)));

for (;n<=8;){
ch=static_cast<unsigned char>(rand());
if(!isalnum(ch)) continue;
cout<<ch;
n++;
}

cout<<" ";

getch();
return 0;
}