在C语言中,可以使用`rand()`函数和`srand()`函数来生成随机数。以下是一个示例程序,用于生成30个在[-50,50]之间的随机整数,并将它们输出,同时计算正数、负数和0的个数以及平均值:
```c
include include include int main() { srand(time(0)); // 使用当前时间作为随机数种子 int gui = {0}; // 定义一个6x5的二维数组来存储随机数 int i, j, sum = 0, zhengshu = 0, ling = 0, fushu = 0; float aver; // 生成30个随机数并存储到二维数组中 for (i = 0; i < 6; i++) { for (j = 0; j < 5; j++) { gui[i][j] = rand() % 101 - 50; // 生成-50到50之间的随机数 sum += gui[i][j]; if (gui[i][j] > 0) zhengshu++; else if (gui[i][j] < 0) fushu++; else ling++; } } // 输出随机数 for (i = 0; i < 6; i++) { for (j = 0; j < 5; j++) { printf("%4d", gui[i][j]); } printf("\n"); } // 计算正数、负数和0的个数以及平均值 aver = sum * 1.0 / 30; printf("正数有%d个\n负数有%d个\n0有%d个\n总合为sum=%d\n平均值aver=%.2f\n", zhengshu, fushu, ling, sum, aver); return 0; } ``` 代码解释: `include `include `include `srand(time(0));`:使用当前时间作为随机数种子,确保每次运行程序时生成的随机数序列不同。 `rand() % 101 - 50;`:生成一个在[-50,50]之间的随机整数。 使用一个6x5的二维数组`gui`来存储30个随机数。 使用嵌套的`for`循环生成随机数并存储到数组中。 使用另一个嵌套的`for`循环输出随机数。 遍历数组,统计正数、负数和0的个数。 计算总和并求平均值,平均值保留两位小数。 通过这种方式,你可以生成30个指定范围内的随机数,并进行相应的统计计算。包含头文件
设置随机数种子
生成随机数
存储和输出随机数
计算统计值