练习1-14 编写一个程序,打印输入中各个字符出现频度的直方图

原创 2016年05月30日 21:15:38
#include <stdio.h>
#define MAXHIST 15
#define MAXCHAR 128
main()
{
    int c,i;
    int len;
    int maxvalue;
    int cc[MAXCHAR];
    for(i=0;i<MAXCHAR;++i)
        cc[i]=0;
    while((c=getchar())!=EOF){
        if(c<MAXCHAR)
        ++cc[c];
    }

    maxvalue=0;
    for(i=0;i<MAXCHAR;++i){
        if(cc[i]>maxvalue)
            maxvalue=cc[i];
    }

    for(i=1;i<MAXCHAR;++i){
        if(isprint(i))
            printf("%5d - %c -%5d : ",i,i,cc[i]);
        else
            printf("%5d -   -%5d : ",i,cc[i]);
        if(cc[i]>0){
            if((len=cc[i]*MAXHIST/maxvalue)<=0)
                len=1;
        }
        else
            len=0;
        while(len>0){
            putchar('*');
            --len;
        }
        putchar('\n');
    }

}

第7周 C语言程序设计(新2版) 练习1-14 打印输出各个字符出现频度的直方图(输出结果有问题)

问题及代码: /*打印输入中各个字符出现频度的直方图*/ #include #include #define MAXHIST 15 //最大直方图长度 #define MAXCHAR 128 ...
  • Emperor_21AD_ShiDi
  • Emperor_21AD_ShiDi
  • 2016年05月11日 17:51
  • 634

打印输入的单词长度和各个字符出现频数的直方图(水平方向和垂直方向)

这事实上是K&R导言中练习1-13和1-14的问题,因为两个问题都涉及直方图,有些相似,所以都放在一起。相对来说自由发挥的余地比较大,不同的码者会写出不同形式的代码,下面只是我的解决方案。 #incl...
  • xjfang09
  • xjfang09
  • 2017年04月28日 22:35
  • 321

练习1-14 编写一个程序,打印输入中各个字符出现频度的直方图(水平)

C语言程序设计(第二版) 练习1-14 个人设计编写一个程序,打印输入中各个字符出现频度的直方图(水平)代码块#include main() { int c, nletter, nwhit...
  • navicheung
  • navicheung
  • 2017年03月27日 16:13
  • 628

练习1-13 编写一个程序,打印输入中单词长度的直方图(水平)

C语言程序设计(第二版) 练习1-13 个人设计编写一个程序,打印输入中单词长度的直方图(水平)。代码块#include main() { int c, nc, fnl, i; ...
  • navicheung
  • navicheung
  • 2017年03月27日 15:03
  • 778

编写一个程序,打印输入中单词长度的直方图

#include #define MAXHIST 15 #define MAXWORD 11 #define IN 1 #define OUT 0int main() { int c, i,...
  • talent_CYJ
  • talent_CYJ
  • 2016年06月24日 11:45
  • 1698

编写一个程序,打印输入中各个字符出现的频度的直方图

此题来自于被封为C语言圣经的TCPL 第二版 17页 联系1-14 本人根据自己的理解 写出下段程序 由于本人学识有限 如有错误之处 敬请指出 #include #define maxvalue...
  • qq_27723683
  • qq_27723683
  • 2015年09月26日 11:25
  • 301

数据结构课程设计-12月27日

明天起到星期四,是四天的数据结构的课程设计周,就又有记录的日志了。前提说好,一切以不上网参考不复制不利用其他现成代码为主,一定要自己动手,实在不行的地方记录下来,然后再参考。 先给出课程设计的题目: ...
  • zy_dream
  • zy_dream
  • 2015年12月27日 23:07
  • 826

打印输入中单词长度的直方图,垂直方向的。折磨使我强大的一个程序!

#include #include#define MAXWORDLEN 10 //宏定义最长数组元素个数int main(void) { int c; int inspace = ...
  • lizhidefengzi
  • lizhidefengzi
  • 2016年11月22日 00:33
  • 433

哈夫曼(Huffman)树与哈夫曼编码

哈夫曼树又称最优二叉树,是一种带权路径长最短的树。树的路径长度是从树根到每一个叶子之间的路径长度之和。节点的带树路径长度为从该节点到树根之间的路径长度与该节点权(比如字符在某串中的使用频率)的乘积。 ...
  • qq_36617521
  • qq_36617521
  • 2017年03月06日 09:34
  • 147

poj&nbsp;百炼&nbsp;2800:垂直直方图

总时间限制: 1000ms 内存限制: 65536kB 描述 输入4行全部由大写字母组成的文本,输出一个垂直直方图,给出每个字符出现的次数。注意:只用输出字符的出现次数,不用输出空白字符,数字或...
  • u013417158
  • u013417158
  • 2014年01月13日 16:01
  • 908
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:练习1-14 编写一个程序,打印输入中各个字符出现频度的直方图
举报原因:
原因补充:

(最多只允许输入30个字)