C语言代码随机生成不重复的字母
时间: 2024-03-14 18:46:38 浏览: 60
以下是一个示例代码,可以生成指定数量的随机字母,且不重复:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
int count = 10; // 生成字母的数量
char letters[count]; // 存放生成的字母
int i, j;
srand(time(NULL)); // 初始化随机数生成器
// 依次生成不重复的字母
for (i = 0; i < count; i++) {
char letter;
do {
letter = rand() % 26 + 97; // 生成 a~z 之间的字母
for (j = 0; j < i; j++) {
if (letters[j] == letter) {
letter = 0; // 字母已存在,需重新生成
break;
}
}
} while (letter == 0);
letters[i] = letter; // 存储生成的字母
}
// 输出生成的字母
for (i = 0; i < count; i++) {
printf("%c ", letters[i]);
}
printf("\n");
return 0;
}
```
该代码通过使用随机数生成器生成 a~z 之间的字母,然后通过循环判断是否已经生成过该字母,如果已经生成过,则重新生成,直到生成不重复的字母为止。最终生成的字母存储在一个数组中,并输出到控制台。
阅读全文