博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux C/C++编程一站式学习--以可视化的形式打印直方图
阅读量:4302 次
发布时间:2019-05-27

本文共 1597 字,大约阅读时间需要 5 分钟。

#include 
#include
#include
#define N 20int a[N];void gen_random(int upper_bound){ srand(time(NULL)); //自行制定初值,time(2)表示当前系统时间距1970年1月1日00:00:00的秒数 int i; for(i = 0;i < N;i++) a[i] = rand() % upper_bound;}int howmany(int value){ int count = 0,i; for(i = 0;i < N;i++) if(a[i] == value) ++count; return count;}int main(void){ int i,j,histogram[10]={0}; gen_random(10); for(i = 0;i < N;i++){ histogram[a[i]]++;// histogram[i] = howmany(i);// printf("%d\n",histogram[i]); }// for(i = 0;i < 10;i++)// printf("%d\n",histogram[i]); //水平打印 printf("水平方向:\n"); for(i = 0;i < 10;i++){ printf("%d ",i); for(j = 0;j < histogram[i];j++) printf("* "); printf("\n"); }/*方法一 //垂直打印 printf("\n垂直方向:\n"); int max=0; for(i = 0; i < 10;i++){ max = (max > histogram[i]) ? max : histogram[i]; printf("%d ",i); } printf("\n\n"); for(i = 0;i < max;i++){ for(j = 0;j < 10;j++){ if(histogram[j] > 0){ printf("* "); --histogram[j]; } else printf(" "); } printf("\n"); }*///方法二 printf("\n垂直打印:\n"); int k,l; for(j = 0;j< 10;j++) printf("%d ",j); printf("\n"); for(l = 0;l
< 10;k++){ if(histogram[k]>0){ printf("* "); histogram[k]--; } else{ printf(" "); } } printf("\n"); }; printf("\n"); return 0;}

转载地址:http://dmmws.baihongyu.com/

你可能感兴趣的文章
Java笔试面试题003
查看>>
Java太阳系小游戏分析和源码
查看>>
Java笔试面试题004
查看>>
Java小游戏之打飞机(一)
查看>>
Java笔试面试题005
查看>>
oop_day02_类、重载_20150810
查看>>
Linux常用命令002之搜索命令locate、whereis、which、find、grep
查看>>
oop_day03_内存管理、引用类型数组
查看>>
Java小游戏之打飞机(二)
查看>>
oop_day04_继承、重写_20150812
查看>>
Java笔试面试题006
查看>>
oop_day05_package、public、static、final、内部类
查看>>
oop_day06_抽象类、接口_20150814
查看>>
Java笔试面试题007
查看>>
Java 抽象类与接口的区别
查看>>
oop_day07_多态_20150815
查看>>
Java笔试面试题008
查看>>
Java之面向对象详细总结
查看>>
Java笔试面试题009
查看>>
Java笔试面试题010
查看>>