日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

垂直柱状图(洛谷-P1598 )

發布時間:2025/3/17 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 垂直柱状图(洛谷-P1598 ) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

題目描述

寫一個程序從輸入文件中去讀取四行大寫字母(全都是大寫的,每行不超過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

源代碼

#include<iostream> #include<cstring> #include<cstdio> using namespace std; int main() {char word[4][100]; int statistic[27]={0};int i,j,k;int max=0;for(i=0;i<4;i++)//輸入四行字母gets(word[i]);for(i=0;i<4;i++)//統計字母個數for(j=0;word[i][j]!='\0';j++)for(k=1;k<=26;k++)if(int(word[i][j]-64)==k)statistic[k]++;for(i=1;i<=26;i++)//求最大值if(max<statistic[i])max=statistic[i];max++;char column[28][100];for(i=1;i<=26;i++) column[i][0]=char(i+64);//存儲橫坐標的字母for(i=1;i<=26;i++)//按字母個數統計“*”{for(j=1;j<=max;j++){if(j<=statistic[i]) column[i][j]='*';else column[i][j]=' ';}}for(j=max-1;j>=0;j--)//按要求輸出{for(i=1;i<=26;i++){if(i<26) cout<<column[i][j]<<" ";else cout<<column[i][j];}if(j>0) cout<<endl;}return 0; }

?

總結

以上是生活随笔為你收集整理的垂直柱状图(洛谷-P1598 )的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。