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


     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 == '
    ')//判断行数
    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个标点符号
    ", line, word, str, g);
    35     fclose(fp);
    36 }# test2

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

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

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

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

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

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

  • 相关阅读:
    基础【五】字典的操作方法
    基础【四】列表的操作方法
    基础【三】字符串的操作方法
    基础【二】while循环及基本运算符
    基础【一】基础数据类型
    C++ string 深拷贝 与 浅拷贝
    多进程引用的动态链接库中的全局变量问题
    C++ 在类里面使用多线程技术
    openwrt 解决包依赖关系
    lua 的元表与元方法
  • 原文地址:https://www.cnblogs.com/Ssunyujia/p/5312317.html
Copyright © 2020-2023  润新知