Cプログラミング言語(第2版)1-14
プログラムを作成し、入力中の各文字の出現頻度のヒストグラムを印刷します.
以上が入力したアルファベットをテストする頻度です.
#include<stdio.h>
void main(){
int letters[26];
for(int i=0;i<26;i++)
letters[i]=0;
int c;
//a c=getchar();
int charA=65;//A ascii 65,a ascii 97
int chara=97;
while((c=getchar())!=EOF){
getchar();//
if(c-charA<26&&c-charA>=0){
letters[c-charA]++;
}
else if(c-chara<26&&c-chara>=0){
letters[c-chara]++;
}
}
for(int j=0;j<26;j++)
{
printf("%c %c :",charA+j,chara+j);
for(int k=0;k<letters[j];k++)
{
printf("%s","*");
}
printf("%s","
");
}
}
以上が入力したアルファベットをテストする頻度です.
#include<stdio.h>
void main(){
int letters[127];
for(int i=0;i<127;i++)
letters[i]=0;
int c;
while((c=getchar())!=EOF){
getchar();
letters[c]++;
}
for(int j=0;j<127;j++)
{
if(letters[j]!=0){
printf("%c :",j);
for(int k=0;k<letters[j];k++)
{
printf("%s","*");
}
printf("%s","
");
}
}
}