请设计 一个密码生成器,要求随机生成4组10位密码(密码只能由字母和数字组成),每一组必须包含至少一个大写字母,每组密码不能相同,输出生成的密码.
#include<stdio.h>
#include<time.h>
#include<stdlib.h>
int getchar();
void test(int array[]);
int main(){
int data[4][10];
for(int i = 0;i < 4;i++){
for(int j = 0;j < 10;j++){
if(j == 9){
test(data[i]);
}else{
data[i][j] = getchar();
}
}
}
for(int i = 0;i < 4;i++){
for(int j = 0;j < 10;j++){
printf("%c ",data[i][j]);
}
printf("
");
}
return 0;
}
void test(int array[]){
int state = 0;
for(int i = 0;i < 9;i++){
if(array[i] >=5 && array[i] <= 90){
state = 1;
}
}
if(state){
array[9] = getchar();
}else{
array[9] = rand()%26 + 65;
}
}
int getchar(){
int model;
int sign;
model = rand()%3;
if(model == 0){
sign = rand()%10;
sign = sign + 48;
}else if(model == 1){
sign = rand()%26;
sign = sign + 65;
}else{
sign = rand()%26;
sign = sign + 97;
}
return sign;
}