满意答案
GUYE117
2013.04.26
采纳率:40% 等级:11
已帮助:3664人
下面程序统计了所有可见 ASCII 码。0x20-0x7e
放在 b[] 中。
逗号 0x2c 在 b[0x2c-0x20]
分号 0x3b 在 b[0x3b-0x20]
其它 标点符号 请查 ASCII 码,存 b[ASCII - 0x20].
字符总数 n.
--------------------------------------
#include
#include
void main()
{
FILE *fin;
int c;
long int n=0;
int b[0x7f-0x20];
int i;
for (i=0;i<0x7f-0x20;i++) b[i] = 0;
if ( (fin = fopen("a.txt", "r")) == NULL) {
printf("open error\n");exit(0);
};
while(1){
c=fgetc(fin);
if (c ==EOF) break;
b[c-0x20]++;
n++;
}
fclose(fin);
printf("total chars: %d\n",n);
printf("comma: %d rate:%f\n",b[0x2c-0x20],(float)b[0x2c-0x20]/n);
}
00分享举报