随机生成 N 个数,求最小值。 用c语言
时间: 2023-12-03 12:44:29 浏览: 93
可以通过循环生成N个随机数,并用一个变量记录当前最小值,每次生成一个数时与当前最小值进行比较,如果小于当前最小值,则更新最小值。代码如下:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
int n, i, min, num;
printf("请输入生成随机数的个数:");
scanf("%d", &n);
srand((unsigned)time(NULL)); // 初始化随机数种子
min = rand(); // 随机生成一个初始最小值
for (i = 1; i < n; i++) {
num = rand();
if (num < min) {
min = num;
}
}
printf("最小值为:%d\n", min);
return 0;
}
```
在这个程序中,我们使用了 `srand()` 函数初始化了随机数种子,这样每次运行程序生成的随机数序列都是不同的。同时,我们使用了 `rand()` 函数生成随机数,并使用一个变量 `min` 记录当前的最小值,每次生成一个数时与 `min` 进行比较,如果小于 `min` 则更新 `min` 的值。最终输出 `min` 即为这个随机数序列的最小值。
相关问题
随机生成 N 个数,求最小值用c语言
可以使用数组和循环语句来实现随机生成N个数,并求最小值。
以下是一个示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
int n, i, min;
printf("请输入需要生成的随机数个数:");
scanf("%d", &n);
// 初始化随机数生成器
srand((unsigned)time(NULL));
// 生成n个随机数并存储到数组中
int arr[n];
for (i = 0; i < n; i++) {
arr[i] = rand() % 100; // 生成0~99的随机数
printf("%d ", arr[i]);
}
// 求最小值
min = arr[0];
for (i = 1; i < n; i++) {
if (arr[i] < min) {
min = arr[i];
}
}
printf("\n最小值为:%d\n", min);
return 0;
}
```
代码中,先通过 `scanf` 获取需要生成的随机数个数 `n`,然后使用 `srand` 初始化随机数生成器,接着使用 `rand` 生成随机数并存储到数组中。最后使用一个循环遍历数组,找到最小值并输出即可。
c语言随机生成n个数求最小值
可以使用rand()函数生成随机数,然后比较得出最小值。
以下是一个示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
int main() {
int n;
printf("请输入要生成的随机数的个数:");
scanf("%d", &n);
int min = 100; // 假设生成的随机数不超过100
for (int i = 0; i < n; i++) {
int num = rand() % 100 + 1; // 生成1~100之间的随机数
printf("%d ", num);
if (num < min) {
min = num;
}
}
printf("\n最小值为:%d\n", min);
return 0;
}
```
在这个示例代码中,我们首先读入要生成的随机数的个数,然后使用rand()函数生成1~100之间的随机数,并将每个生成的随机数依次输出。同时,我们使用一个变量min记录当前生成的随机数中的最小值,每次生成新的随机数时,都与min进行比较,如果新生成的随机数比min还小,则更新min的值。最终,输出最小值即可。
阅读全文