C语言实现指定范围随机数数组填充及输出功能求助
解决数组输出功能的补充方案
嘿,你已经把数组元素统计的核心逻辑写得很清晰了!要补充输出功能,咱们只需要在现有代码里添加两个输出循环:一个打印生成的原始数组,另一个打印每个数字的出现次数。另外还有个小建议,记得给rand()初始化随机种子,不然每次运行生成的数组都是一样的哦~
修改后的完整代码
#include <stdio.h> #include <time.h> #include <stdlib.h> int main() { int n; printf("How many elements in array?:"); scanf("%d",&n); // 初始化随机数种子,确保每次运行生成不同的随机数组 srand(time(NULL)); int array0[n]; for(int i = 0 ; i < n ; i++) { array0[i]= rand()%9 + 1; } // 输出原始数组 printf("\nGenerated array elements: "); for(int i = 0; i < n; i++) { printf("%d ", array0[i]); } printf("\n"); int array1[10]; for(int i = 0 ; i < 10 ; i++) { array1[i]= 0; } int index; for(int i = 0 ; i < n ; i++) { index = array0[i]; array1[index-1]++; } // 输出每个数字的出现次数 printf("\nOccurrence count for numbers 1-9:\n"); for(int i = 0; i < 9; i++) { printf("Number %d: %d times\n", i+1, array1[i]); } return 0; }
关键修改说明
- 随机数种子初始化:添加了
srand(time(NULL));,利用当前时间作为随机种子,让每次运行程序生成的数组都不一样。 - 原始数组输出:新增循环遍历
array0,把每个元素打印出来,方便你查看生成的随机数组内容。 - 统计结果输出:通过循环遍历
array1的前9个元素(对应数字1-9的出现次数),清晰展示每个数字出现的次数。
这样修改后,程序运行时会先让你输入数组长度,然后输出生成的数组,最后输出每个数字的统计结果啦~
内容的提问来源于stack exchange,提问作者Berkant Duman
相关产品推荐
相关产品推荐

