生成3个0-1范围的随机数,并打印其平均值,。打印平均值不会写了
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
int i;
double sum = 0.0;
double average;
// 设置随机数种子
srand(time(NULL));
// 生成三个0-1范围的随机数,并计算它们的平均值
for (i = 0; i < 3; i++) {
double randomNum = (double)rand() / RAND_MAX; // 生成0-1之间的随机数
sum += randomNum;
}
average = sum / 3.0;
printf("随机数的平均值: %.2f\n", average);
return 0;
}
【以下回答由 GPT 生成】
问题解答:
代码已经基本正确,只需要对随机数生成的范围进行修改即可。下面是修改后的代码:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
// 初始化随机数种子
srand(time(0));
// 生成3个随机数
double num1 = (double)rand() / RAND_MAX;
double num2 = (double)rand() / RAND_MAX;
double num3 = (double)rand() / RAND_MAX;
// 计算平均值
double average = (num1 + num2 + num3) / 3.0;
// 打印平均值
printf("平均值: %.2f\n", average);
return 0;
}
修改说明: 1. 将随机数的类型改为double,用于保存0-1范围内的随机数。 2. 将rand()函数的返回值除以RAND_MAX,将随机数标准化到0-1之间。
以上是我的解决方案,希望能对您有所帮助。如果有任何疑问,请随时告诉我。
【相关推荐】