c语言 统计由文件打开一篇文章的字母和空格的个数和频率
#include<stdio.h>#include<stdlib.h>
void main()
{ FILE *fp;
char c[10000000000000];
int letter[27];
float rate[27];
int i,j,k;
float len=0;
int temp=0;
if((fp=fopen("wenzhang.txt","r"))==NULL)
{ printf("can not open\n");
exit(0);
}
fscanf(fp,"%c",c);
for(k=0;k<=26;k++)
{
letter[k]=0;
}
while(c[i]!=EOF)
{ len++;}
for(i=0;i<=len;i++)
{
if (c[i] == ' '){
letter[0]++;
}
if (c[i] == 'A' ||c[i] =='a'){
letter[1]++;
}
if (c[i] == 'B' ||c[i] =='b'){
letter[2]++;
}
if (c[i] == 'C' ||c[i] =='c'){
letter[3]++;
}
if (c[i] == 'D' ||c[i] =='d'){
letter[4]++;
}
if (c[i] == 'E' ||c[i] =='e'){
letter[5]++;
}
if (c[i] == 'F' ||c[i] =='f'){
letter[6]++;
}
if (c[i] == 'G' ||c[i] =='g'){
letter[7]++;
}
if (c[i] == 'H' ||c[i] =='h'){
letter[8]++;
}
if (c[i] == 'I' ||c[i] =='i'){
letter[9]++;
}
if (c[i] == 'J' ||c[i] =='j'){
letter[10]++;
}
if (c[i] == 'K' ||c[i] =='k'){
letter[11]++;
}
if (c[i] == 'L' ||c[i] =='l'){
letter[12]++;
}
if (c[i] == 'M' ||c[i] =='m'){
letter[13]++;
}
if (c[i] == 'N' ||c[i] =='n'){
letter[14]++;
}
if (c[i] == 'O' ||c[i] =='o'){
letter[15]++;
}
if (c[i] == 'P' ||c[i] =='p'){
letter[16]++;
}
if (c[i] == 'Q' ||c[i] =='q'){
letter[17]++;
}
if (c[i] == 'R' ||c[i] =='r'){
letter[18]++;
}
if (c[i] == 'S' ||c[i] =='s'){
letter[19]++;
}
if (c[i] == 'T' ||c[i] =='t'){
letter[20]++;
}
if (c[i] == 'U' ||c[i] =='u'){
letter[21]++;
}if (c[i] == 'V' ||c[i] =='v'){
letter[22]++;
}
if (c[i] == 'W' ||c[i] =='w'){
letter[23]++;
}
if (c[i] == 'X' ||c[i] =='x'){
letter[24]++;
}if (c[i] == 'Y' ||c[i] =='y'){
letter[25]++;
}if (c[i] == 'Z' ||c[i] =='z'){
letter[26]++;
}
}
for(j=0;j<=26;j++){
rate[j] = letter[j]/len;
}
fclose(fp);
printf("空格的数量:%d,占全文字符的频率为:%lf\n",letter[0],rate[0]);
printf("A的数量:%d,占全文字符的频率为:%lf\n",letter[1],rate[1]);
printf("B的数量:%d,占全文字符的频率为:%lf\n",letter[2],rate[2]);
printf("C的数量:%d,占全文字符的频率为:%lf\n",letter[3],rate[3]);
printf("D的数量:%d,占全文字符的频率为:%lf\n",letter[4],rate[4]);
printf("E的数量:%d,占全文字符的频率为:%lf\n",letter[5],rate[5]);
printf("F的数量:%d,占全文字符的频率为:%lf\n",letter[6],rate[6]);
printf("G的数量:%d,占全文字符的频率为:%lf\n",letter[7],rate[7]);
printf("H的数量:%d,占全文字符的频率为:%lf\n",letter[8],rate[8]);
printf("I的数量:%d,占全文字符的频率为:%lf\n",letter[9],rate[9]);
printf("J的数量:%d,占全文字符的频率为:%lf\n",letter[10],rate[10]);
printf("K的数量:%d,占全文字符的频率为:%lf\n",letter[11],rate[11]);
printf("L的数量:%d,占全文字符的频率为:%lf\n",letter[12],rate[12]);
printf("M的数量:%d,占全文字符的频率为:%lf\n",letter[13],rate[13]);
printf("N的数量:%d,占全文字符的频率为:%lf\n",letter[14],rate[14]);
printf("O的数量:%d,占全文字符的频率为:%lf\n",letter[15],rate[15]);
printf("P的数量:%d,占全文字符的频率为:%lf\n",letter[16],rate[16]);
printf("Q的数量:%d,占全文字符的频率为:%lf\n",letter[17],rate[17]);
printf("L的数量:%d,占全文字符的频率为:%lf\n",letter[18],rate[18]);
printf("S的数量:%d,占全文字符的频率为:%lf\n",letter[19],rate[19]);
printf("T的数量:%d,占全文字符的频率为:%lf\n",letter[20],rate[20]);
printf("U的数量:%d,占全文字符的频率为:%lf\n",letter[21],rate[21]);
printf("V的数量:%d,占全文字符的频率为:%lf\n",letter[22],rate[22]);
printf("W的数量:%d,占全文字符的频率为:%lf\n",letter[23],rate[23]);
printf("X的数量:%d,占全文字符的频率为:%lf\n",letter[24],rate[24]);
printf("Y的数量:%d,占全文字符的频率为:%lf\n",letter[25],rate[25]);
printf("Z的数量:%d,占全文字符的频率为:%lf\n",letter[26],rate[26]);
/*printf("%lf",len);*/
}
为什么不能显示???求大神解答 谢谢了 在线等