博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

第三周作业————————word count

Posted on 2016-03-23 18:29  我是个读书人zZ  阅读(266)  评论(1编辑  收藏  举报
 1 #include <stdio.h>
 2 void main()
 3 {
 4     FILE *fp;
 5     int line = 1, str, word, pu, ch;
 6     int g;
 7     str = 0; word = 0; pu = 0; ch = 0; g = 0;
 8     fopen_s(&fp, "E:\\sun.txt", "r");//打开相应位置文件
 9     if (fp == NULL)//判断文件是否为空
10     {
11         printf("the file : sun.txt not found");
12     }
13     ch = fgetc(fp);//将文件中所有符号按字符依次读取
14         str++;
15     while (ch != EOF)//判断是否读取结束
16     {
17         printf("%c", ch);
18         if (ch == '\n')//判断行数
19         {
20             line++;
21         }
22         else if (ch == ' ' || ch == ',')//判断单词数
23         {
24             word++;
25             if (ch == ',')//判断标点符号
26             {
27                 g++;
28             }
29         }
30         str++;//统计所有的字符
31         ch = fgetc(fp);
32     }
33     word++;
34     printf("一共有:%d行 %d个单词 %d个字符 %d个标点符号\n", line, word, str, g);
35     fclose(fp);
36 }# test2

本次作业是第二个个人项目,统计字符数,行数,标点符号等。

其实这个题目还挺简单的,所以拿到题目时我的思路很清晰,并马上付诸行动。

首先声明指针,然后打开相应位置的相应文件。然后判断文件是否为空,空文件结束操作,否则继续下一项。

文件不为空的情况下,将文件中所有数据按字符进行依次读取,读取完毕后统计出所有的字符数。接下来依次进行行数,单词数,标点符号数的统计。最后关闭文件,将结果输出。

虽然题目不是很难,但是值得思考的地方还有很多。比如统计结束之后,是否可以将所有的单词,标点符号进行分类,并将其存入到不同的文件下。还有单词查找的准确度等等,都是要考虑的问题,毕竟需求决定发展方向,所以这也不是我的最终版本,这个太简单了,很多功能还没有添加,我会继续改写,陆续添加新功能。

通过两次个人项目,我对于动手编程已经没有恐惧感了,渐渐的变得敢于动手,虽然我的程序还很幼稚明,也很简单,但我会继续努力,争取在今后的两人结对编程和团队项目中展现自己的能力。