字符计数 c语言

来源:百度知道 编辑:UC知道 时间:2024/05/31 00:53:49
用c语言编程,统计任意一个文本文件中的行数、空格数、制表符数('\t')、字母以及数字分别有多少?

char *s;
long length;
int i, cent = 0, ctab = 0, cspa = 0, cnum = 0;

FILE *in = fopen("text.txt", "rb");
fseek(in, 0L, SEEK_END);
length = ftell(stream);
fseek(stream, 0L, SEEK_SET);
if(s = (char*)malloc(length) != NULL)
{
fread(s, length, 1, in);
for(i = 0; i < length; ++i)
{
if(s[i] == '\n') ++cent;
else if(s[i] == '\t') ++ctab;
else if(s[i] == ' ') ++cspa;
else if(isdigit(s[i])) ++cnum;
}
printf("Enter: %d Tab: %d, Space: %d Digit %d Letter", cent, ctab, cspa, cnum, length - ctab - cspa - cnum);
free(s);
}
fclose(in);