📄 2.c
字号:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int sum=0;
int 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=0;
void toCalculate(char s1[]);
int main()
{
FILE *fp1;
FILE *fp2;
char buf[1024];
if( (fp1=fopen("d:\\abc.txt","r"))==NULL )
{
printf("open file failed or no abc.txt! @ d:\n");
system("pause");
exit(0);
}
while(!feof(fp1))
{
memset(buf, 0, 1024);
fgets(buf, 1024, fp1);
printf(" %s\n",buf);
toCalculate(buf);
}
fclose(fp1);
printf("Total number of char is : %d\n",sum);
float f1=sum+0.0;
printf("\n\n the frequency table\n");
printf("\n\n+++++++++++++++++++++++++++++++++++++++++++++\n");
printf("a=%2.3f%% b=%2.3f%% c=%2.3f%% d=%2.3f%% e=%2.3f%%\n",a/f1*100, b/f1*100,c/f1*100,d/f1*100,e/f1*100);
printf("f=%2.3f%% g=%2.3f%% h=%2.3f%% i=%2.3f%% j=%2.3f%%\n",f/f1*100, g/f1*100,h/f1*100,i/f1*100,j/f1*100);
printf("k=%2.3f%% l=%2.3f%% m=%2.3f%% n=%2.3f%% o=%2.3f%%\n",k/f1*100, l/f1*100,m/f1*100,n/f1*100,o/f1*100);
printf("p=%2.3f%% q=%2.3f%% r=%2.3f%% s=%2.3f%% t=%2.3f%%\n",p/f1*100, q/f1*100,r/f1*100,s/f1*100,t/f1*100);
printf("u=%2.3f%% v=%2.3f%% w=%2.3f%% x=%2.3f%% y=%2.3f%%\n",u/f1*100, v/f1*100,w/f1*100,x/f1*100,y/f1*100);
printf("z=%2.3f%%",z/f1*100);
printf("\n+++++++++++++++++++++++++++++++++++++++++++++\n");
system("pause");
return 0;
}
void toCalculate (char s1[])
{
int itemp = 0;
char temp;
while (s1[itemp]!='\0')
{
if (s1[itemp]>='A' && s1[itemp]<='Z')
{
sum++;
}
else if (s1[itemp]>='a'&&s1[itemp]<='z')
{
sum++;
}
temp=s1[itemp];
switch(temp)
{
case 'a':
case 'A':a++;break;
case 'b':
case 'B':b++;break;
case 'c':
case 'C':c++;break;
case 'd':
case 'D':d++;break;
case 'e':
case 'E':e++;break;
case'f':
case'F': f++;break;
case'g':
case'G': g++;break;
case'h':
case'H': h++;break;
case'i':
case'I':i++; break;
case'j':
case'J':j++; break;
case'k':
case'K':k++; break;
case'l':
case'L':l++; break;
case'm':
case'M':m++; break;
case'n':
case'N':n++; break;
case'o':
case'O':o++; break;
case'p':
case'P':p++; break;
case'q':
case'Q':q++; break;
case'r':
case'R':r++; break;
case's':
case'S':s++; break;
case't':
case'T':t++; break;
case'u':
case'U':u++; break;
case'v':
case'V':v++; break;
case'w':
case'W':w++; break;
case'x':
case'X':x++; break;
case'y':
case'Y':y++; break;
case'z':
case'Z':z++; break;
}
itemp++;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -