码迷,mamicode.com
首页 > 其他好文 > 详细

wc项目

时间:2017-09-20 14:33:54      阅读:283      评论:0      收藏:0      [点我收藏+]

标签:include   数字   scanf   单词   etc   string   fscanf   div   logs   

wc.exe是一个常见的工具,他能统计文本文件的字符数、单词数和行数,在网上搜罗之后找到了一篇例文代码

链接如下http://bbs.csdn.net/topics/390918327?page=1

在经过学习之后我自己试着敲了一下,在多次调试之后终于完成。代码如下

运行环境win7 vs2013

 1 #include<stdio.h>
 2 #include<string.h>
 3 #include<stdlib.h>
 4 int c_char(FILE *fp)
 5 {
 6     int num = 0;
 7     char s[20];
 8     while (!feof(fp))
 9     {
10         fscanf_s(fp, "%s", s); //读取字符串
11         num += strlen(s); //叠加字符数
12     }
13     printf("字符数(不计空格和回车)有%d个\n", num);
14     rewind(fp); //绕回文件指针
15     return num;
16 }
17 int w_world(FILE *fp)
18 {
19     char s[20];
20     int n = 0, num = 0;
21     while (!feof(fp))
22     {
23         if (fscanf_s(fp, "%s", s) && !(s[0] >= 0 && s[0] <= 9))
24             n++;
25         else
26             num++;
27     }
28     printf("单词数有%d个,数字有%d个\n", n, num);
29     rewind(fp);
30     return n;
31 }
32 int l_line(FILE *fp)
33 {
34     int n = 1;
35     char ch;
36     while (!feof(fp))
37     {
38         if ((ch = fgetc(fp) == \n))
39             n++;
40     }
41     printf("有%d行\n", n);
42     rewind(fp);
43     return n;
44 }
45 void main()
46 {
47     FILE *fp;
48     fp = fopen("1.txt", "r"); //打开文件
49     c_char(fp);
50     w_world(fp);
51     l_line(fp);
52     fclose(fp);
53 }

 

wc项目

标签:include   数字   scanf   单词   etc   string   fscanf   div   logs   

原文地址:http://www.cnblogs.com/MorningStarHu/p/7560545.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!