统计文件中的行数、单词数、字符数
2016-03-23 17:34
253 查看
用C语言写的代码:
在D盘保存的文件
输出结果为:
#include<stdio.h> #include<string.h> int *getCharNum(char *filename,int *totalNum); int main() { char filename[30]; int totalNum[3]={0,0,0}; printf("Input file name: "); scanf("%s",filename); if(getCharNum(filename,totalNum)) { printf("Total: %d line,%d words,%d chars\n",totalNum[0],totalNum[2],totalNum[1]); } else { printf("Error!\n"); } return 0; } int *getCharNum(char *filename,int *totalNum) { FILE *fp; char buffer[1003]; int bufferLen; int i; char c; int isLastBlank=0; int charNum=0; int wordNum=0; if((fp=fopen(filename,"rb"))==NULL) { perror(filename); return NULL; } printf("line words chars\n"); while(fgets(buffer,1003,fp)!=NULL) { bufferLen=strlen(buffer); for(i=0;i<bufferLen;i++) { c=buffer[i]; if(c==' '||c=='\t') { !isLastBlank && wordNum++; isLastBlank=1; } else if(c!='\n' && c!='\r') { charNum++; isLastBlank=0; } } !isLastBlank && wordNum++; isLastBlank=1; totalNum[0]++; totalNum[1]+=charNum; totalNum[2]+=wordNum; printf("%-7d%-7d%d\n",totalNum[0],wordNum,charNum); charNum=0;wordNum=0; } return totalNum; }
在D盘保存的文件
输出结果为:
相关文章推荐
- JMeter学习(八)JDBC测试计划-连接Oracle
- 自定义滚动条插件
- linux虚拟文件系统2
- 使用javap命令或者eclipse的Bytecode visualizer插件阅读java字节码文件
- 解析excel
- 【API设计风格—RESTful】:前端如何调用RESTful风格的API(三)
- Cg入门25: Fragment shader – UV动画(模糊)
- Threadlocal使用Case
- TCP/IP详解系列 --- 概念总结02
- 高并发负载均衡(二)——Nginx 和LVS
- equals()和hashCode()隐式调用时的约定详解
- [Leetcode 265]Paint House II
- python paramiko模块使用介绍
- google 翻翻翻
- 【有毒的设计模式】策略模式
- Flex Ant自动构建
- struts学习之用户登录
- sql执行顺序
- 12C-OCP升级1z-060-019
- I2C总线结构的EEPROM