第1个回答 2008-03-05
#include<stdio.h>
void main()
{
char ch;
int num[26]={},i,count=0;
ch=getchar();
while(ch!='\n')
{
if(ch>='a'&&ch<='z')
num[ch-'a']++;
else if(ch>='A'&&ch<='Z')
num[ch-'A']++;
ch=getchar();
count++;
}
for(i=0;i<26;i++)
printf("%c|%c:%f %%\n",i+65,i+97,num[i]*100.0/count);
}
//版本2
#include<stdio.h>
void main()
{
char ch;
int num[256]={},i,count=0;
ch=getchar();
while(ch!='\n')
{
num[ch]++;
ch=getchar();
count++;
}
for(i=0;i<256;i++)
if(num[i])printf("%c: %f%%\n",i,num[i]*100.0/count);
}
第2个回答 2020-01-07
int
sum[128],n=0;
for(n=0;n<128;n++)
sum[n]=0;
char
a[100];
scanf("%s",a);
for(n=0;a[n]!='\0';n++)
sum[n]++;
//sum[n]/n即为频率