写一个程序用c语言产生随机数
时间: 2023-09-14 20:08:14 浏览: 92
可以使用C语言中的标准库函数 `rand()` 来产生随机数。需要先调用 `srand()` 函数来初始化随机数种子,通常使用 `time()` 函数来生成一个随机的种子。以下是一个简单的示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
int i, n;
srand(time(NULL)); // 初始化随机数种子
printf("请输入您要生成的随机数个数:");
scanf("%d", &n);
for (i = 0; i < n; i++) {
printf("%d ", rand());
}
return 0;
}
```
运行程序后,会要求输入要生成的随机数的个数,然后程序会输出相应个数的随机数。
相关问题
c语言产生随机数数组
在C语言中,可以使用rand()函数来产生随机数,但是需要注意的是,这些所谓的随机数实际上是伪随机数,也就是一系列经过特定算法计算得出的数字序列。为了生成随机数组,你可以使用以下示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define SIZE 100
int main(void) {
int rand_arr[SIZE], i;
srand((unsigned)time(0)); // 设置种子,以便每次运行程序时生成不同的随机数
for (i = 0; i < SIZE; i++) {
rand_arr[i] = rand(); // 生成随机数并存入数组中
printf("%d\n", rand_arr[i]); // 打印生成的随机数
}
return 0;
}
```
此代码将生成一个大小为100的随机整数数组,并将随机数打印出来。你可以根据需要修改数组的大小。
C语言产生随机数的函数(1和2和3随机数)
在C语言中,生成随机数通常需要用到标准库中的`<stdio.h>`和`<stdlib.h>`头文件。以下是三种常见的方法:
1. **rand()函数**:这是最基础的随机数生成函数,可以返回0到RAND_MAX之间的整数。如果你想要生成1到2之间的随机数,你可以先从0开始,然后加上1,确保范围。例如:
```c
#include <stdio.h>
#include <stdlib.h>
int main() {
srand(time(0)); // 设置随机种子
int random = rand() + 1; // 生成1到RAND_MAX+1的随机数
if (random > 2) random = 2; // 如果大于2,则限制在2内
printf("Random number between 1 and 2: %d\n", random);
return 0;
}
```
2. **uniform_int_distribution**(C++11及以上版本):如果你使用C++,可以利用 `<random>` 库提供的 `std::uniform_int_distribution` 来更精确地控制范围:
```cpp
#include <iostream>
#include <random>
int main() {
std::default_random_engine generator(std::chrono::system_clock::now().time_since_epoch().count());
std::uniform_int_distribution<int> distribution(1, 3);
int random_number = distribution(generator);
std::cout << "Random number between 1 and 3: " << random_number << "\n";
return 0;
}
```
3. **mt19937引擎和cstdlib库(C++)**:在C++中,也可以使用 `<cstdlib>` 的 `std::mt19937` 和 `std::uniform_int_distribution` 生成1到3的随机数,类似C++11的例子。
记得在生成随机数前设置随机数种子,通常使用 `srand(time(NULL))` 或者 `srand(time(0))`,以确保每次程序运行得到不同的随机序列。
阅读全文