• 垂直柱状图


    题目描述

    写一个程序从输入文件中去读取四行大写字母(全都是大写的,每行不超过100个字符),然后用柱状图输出每个字符在输入文件中出现的次数。严格地按照输出样例来安排你的输出格式。

    输入格式

    四行字符,由大写字母组成,每行不超过100个字符

    输出格式

    由若干行组成,前几行由空格和星号组成,最后一行则是由空格和字母组成的。在任何一行末尾不要打印不需要的多余空格。不要打印任何空行。

    输入输出样例

    输入 #1
    THE QUICK BROWN FOX JUMPED OVER THE LAZY DOG.
    THIS IS AN EXAMPLE TO TEST FOR YOUR
    HISTOGRAM PROGRAM.
    HELLO!
    
    输出 #1
                                *
                                *
            *                   *
            *                   *     *   *
            *                   *     *   *
    *       *     *             *     *   *
    *       *     * *     * *   *     * * *
    *       *   * * *     * *   * *   * * * *
    *     * * * * * *     * * * * *   * * * *     * *
    * * * * * * * * * * * * * * * * * * * * * * * * * *
    A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
    

    说明/提示

    每行输出后面不允许出现多余的空格。

     1 #include<iostream>
     2 #include<cstring>
     3 #include<cstdio>
     4 using namespace std;
     5 int sum[26],m;
     6 char a[150];
     7 int main(){
     8     for(int i=0;i<4;i++){
     9         gets(a);
    10         for(int i=0;i<strlen(a);i++) if(a[i]>='A'&&a[i]<='Z') sum[a[i]-65]++;
    11     }
    12     for(int i=0;i<26;i++){
    13         if(m<sum[i]) m=sum[i];
    14     }
    15     for(int i=0;i<m;i++){
    16         for(int j=0;j<26;j++){
    17             if(sum[j]>=(m-i)) cout<<'*';
    18             else cout<<' ';
    19             if(j<25) cout<<' ';
    20         }
    21         cout<<endl;
    22     }
    23     for(int i=0;i<26;i++){
    24         cout<<char(i+65);
    25         if(i<25) cout<<' ';
    26     }
    27     return 0;
    28 }

    word麻鸭,

    这个题可是搞死我了,

    奇怪的问题层出不穷,

    结果只是数组开小了,

    emmm

    sum[26]开成了sum[25]

    这道题其实还是蛮水的,

    只需从最大的数(max)

    一步一步向下走;

    达到那个值(max-i) 就输出'*',

    否则输出' ';

    OK

    水完了(溜了溜了)

  • 相关阅读:
    刷题篇--热题HOT 71-80
    刷题篇--热题HOT 61-70
    双飞翼布局介绍-始于淘宝UED
    css布局——百度前端技术学院
    CSS多列布局Multi-column、伸缩布局Flexbox、网格布局Grid详解
    CSS之BFC详解
    深入理解BFC和Margin Collapse
    CSS 布局_如何实现容器中每一行的子容器数量随着浏览器宽度的变化而变化?
    3列、2列自适应布局,中部内容优先显示3列布局等方法
    三列布局,中间自适应
  • 原文地址:https://www.cnblogs.com/sxy2004/p/12246834.html
Copyright © 2020-2023  润新知