#include <stdio.h>
int main()
{
struct Count
{
int c;
int count;
};
struct Count counter[256];
int i=0;
for(i=0;i<256;i++) {counter[i].c=i;counter[i].count=0;}
FILE* fp;
fp=fopen("d:\\b.txt","rb");
char flag=0xA;
int lines=0;
char tline[256]={'\0'};
char* cp=tline;
char tmp;
while(!feof(fp))
{
tmp=getc(fp);
counter[tmp].count++;
}
//sort
int m,n,tmp2,tmp3;
for(m=0;m<256;m++)
{
for(n=m+1;n<256;n++)
{
if(counter[m].count>=counter[n].count)
{
tmp2=counter[m].count;
counter[m].count=counter[n].count;
counter[n].count=tmp2;
tmp3=counter[m].c;
counter[m].c=counter[n].c;
counter[n].c=tmp3;
}
}
}
//sort end
int _chars=0;
for(i=0;i<256;i++)
{
if(counter[i].count>0)
{
_chars+=counter[i].count;
if(counter[i].c==0xA) //\n
{
printf("\\n Number of occurrences=%d\n",counter[i].count);
}
else
if(counter[i].c==0x20) //space
{
printf("space Number of occurrences=%d\n",counter[i].count);
}
else
if(counter[i].c==0x9) //\t
{
printf("\\t Number of occurrences=%d\n",counter[i].count);
}
else
if(counter[i].c==0x0) //NULL
{
printf("NULL Number of occurrences=%d\n",counter[i].count);
}
else
if(counter[i].c==0xD) //
{
printf("OxD Number of occurrences=%d\n",counter[i].count);
}
else /*Visible characters*/printf("%c Number of occurrences=%d\n",counter[i].c,counter[i].count);
}
}
printf("File the total number of characters=%d\n",_chars);
fclose(fp);
return 0;
}
/*
w Number of occurrences=1
V Number of occurrences=1
O Number of occurrences=1
I Number of occurrences=1
E Number of occurrences=1
: Number of occurrences=1
9 Number of occurrences=1
1 Number of occurrences=1
# Number of occurrences=1
! Number of occurrences=1
g Number of occurrences=2
U Number of occurrences=2
F Number of occurrences=2
D Number of occurrences=2
C Number of occurrences=2
A Number of occurrences=2
' Number of occurrences=2
_ Number of occurrences=3
> Number of occurrences=3
3 Number of occurrences=3
* Number of occurrences=4
L Number of occurrences=5
< Number of occurrences=5
6 Number of occurrences=6
5 Number of occurrences=6
x Number of occurrences=8
N Number of occurrences=8
% Number of occurrences=8
b Number of occurrences=9
2 Number of occurrences=10
d Number of occurrences=11
h Number of occurrences=12
, Number of occurrences=12
+ Number of occurrences=12
} Number of occurrences=15
{ Number of occurrences=15
l Number of occurrences=15
a Number of occurrences=16
\ Number of occurrences=16
/ Number of occurrences=16
0 Number of occurrences=18
" Number of occurrences=18
) Number of occurrences=24
( Number of occurrences=24
p Number of occurrences=25
s Number of occurrences=26
m Number of occurrences=27
] Number of occurrences=29
[ Number of occurrences=29
. Number of occurrences=29
f Number of occurrences=35
= Number of occurrences=39
; Number of occurrences=42
\t Number of occurrences=45
i Number of occurrences=55
u Number of occurrences=64
o Number of occurrences=71
e Number of occurrences=75
r Number of occurrences=76
\n Number of occurrences=78
t Number of occurrences=90
n Number of occurrences=94
c Number of occurrences=95
space Number of occurrences=744
File the total number of characters=2094
*/