#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#define MAXCHAR 127
#define MAXLENGTH 15
int main()
{
char ch;
int chsum[MAXCHAR+1]={0};
while((ch=getchar())!=EOF){
if(ch<=MAXCHAR)
chsum[ch]++;
}
int max=0;
for(int i=0;i<=MAXCHAR;i++){
if(chsum[i]>max)
max=chsum[i];
}
int len;
for(int i=0;i<=MAXCHAR;i++){
len=chsum[i]*(MAXLENGTH/max);
if(len<=1&&len!=0)
len=1;
if(isprint(i))//isprint()判断是否为可显示字符,在ctype.h里
printf("%03d--%c--%d:",i,i,chsum[i]);
else
printf("%03d-- --%d:",i,chsum[i]);
for(int j=1;j<=len+1;j++)
printf("%c",j==len+1?'\n':'*');
}
return 0;
}
打印输入中各个字符出现频率的直方图
最新推荐文章于 2024-02-23 01:13:34 发布