使用使用c语言生成随机数的示例分享语言生成随机数的示例分享
在C语言中,rand()函数可以用来产生随机数,但是这不是真真意义上的随机数,是一个伪随机数,这篇文章主要
介绍了使用c语言生成随机数的示例,需要的朋友可以参考下
这是一个自己用c写的不重复产生随机数的代码,且只有输入q才能退出程序。
复制代码 代码如下:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define MAX 100
int main(void)
{
int i, j, flag, num, a[MAX] = { 0 }, max, ch;
srand((unsigned)time(NULL));
printf("Please input max number<1-39>(q to quit): ");
a:while ((scanf("%d", &max)) == 1)
{
if (max >= 40)
{
printf("Please input max number<1-39>(q to quit): ");
while (getchar() != '')
continue;
continue;
}
for (i = 0; i < max; ++i)
{
do{num = rand() % 41 + 1;
}while(num==8||num==36);
flag = 1;
for (j = 0; j < i; ++j)
{
if (num == a[j] || num == 8 || num == 36)
{
flag = 0;
break;
}
}
if (flag)
a[i] = num;
else
--i;
}
while
(getchar() != '') continue;
for (i = 0; i < max; ++i)
printf("%d ", a[i]);
printf("");
printf("Please input max number<1-39>(q to quit): ");
}
if (getchar() != 'q')
{
puts("q to quit,please!");
printf("Please input max number<1-39>(q to quit): ");
while (getchar() != '')
continue;
goto a;
}
printf("Bye!");
return 0;
}