概述
《c语言学习笔记》关于整型随机数组中各个元素出现次数的统计(直方图)
#include<stdio.h>
#include<stdlib.h>
#define N 20
int a[N];
void gen_random(int floor) //传一个数过来,作为floor(规定的生成的随机数的最大数),生成 N个随机数
{
int i;
for(i=0;i<N;i++)
{
a[i]=rand()%floor;//random,随机生成一个数(其实是伪随机数),需要包含stdlib.h
}
}
int main(void)
{
int i,num[10]={0};//局部变量一定要赋值,不然会是随机数 ,可能会造成bug
gen_random(10);//调用随机数产生函数
for(i=0;i<N;i++)//a[i]一共有N个元素,都小于10(floor),用a[i]的值做为num的下标
num[a[i]]++;//num[]++,计数功能
printf("随机数范围 ");
for(i=0;i<10;i++)
printf("%d ",i);//打印出随机数范围
printf("n");
printf("具体随机数 ");
for(i=0;i<10;i++)
printf("%d ",num[i]);//打印出啊a[i]各个元素个数
printf("n");
int max=num[0];//定义一个max,用来确定直方图最长要几行
for(i=1;i<10;i++)
{
if (max<num[i])//找出max
max=num[i];
}
int k;
for(i=0;i<max;i++)//外层 ,控制‘* ’的行数
{
printf(" ");//用来对齐
for(k=0;k<10;k++)//内层,控制列数 ,其实就是何时n
{
if((num[k]--)>0)
printf("* ");
else
printf(" ");//没有就打印空格
}
printf("n");
}
return 0;
}
结果如图
最后
以上就是和谐棒球为你收集整理的数组元素出现次数统计的全部内容,希望文章能够帮你解决数组元素出现次数统计所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复