今天更下word count程序的设计思路及实现方法。

我的程序贴在coding里,这里就先不贴出来了,

我的coding地址:https://coding.net/u/holy_angel/p/words-count/git

想去看看的直接点地址跳转。

Word count这个东西让我想起了上个学期学习的编译方法,额,或许是睡了一个学期的编译方法,感觉并不会做,然后就开始撸代码了~

整个设计花了大概5个小时。

没有啥设计,听着音乐,喝着咖啡,想到哪写到哪~

首先是文件名的自己键入和文件的写入读出,这点用c也就搞定了,大约1小时左右,完成了框架,实现手动输入文件名,查找到文件,或是新建一个文件,但是有一个问题啊,新建文件的时候一直会失败,我估计可能是管理员权限的问题,他好像没有权限对其他文件夹下文件进行新建,读取是没有问题的。把文件读取后,不能浪费,用个char buf[100000]来兜着数据,然后,就没有文件的事了,去霍霍buf数组了,等到关闭程序前,检测下数组被霍霍过没~如果有,那就从新写入文件,nice,就这样搞定了。

然后就花了一杯咖啡的时间干掉了行统计和空行统计。

行统计,顾名思义,统计行,说白了就是统计“\n”,一个for循环撸数组并计数,return回来,就好了,空行的话,多个flag,检测在遇见“\n”之前有没有埋伏着一些字符,没有的话就算空行,值得注意的是,有时候空行里会有空格,需要忽视掉那些空格,就刀从屏幕里剐出来就行了,是不是很机智,当然,事实上,我写了一个很蠢的空行统计程序,在coding里也能看到,后来才发现有问题,Kill掉了。

接下来是字符数的统计,我对字符的理解是以字母开头,中间可以为字母或者数字,允许通过“_”“.”这两个符号连接,定义完这个,工作就完成了一半,剩下的就是实现,一丢丢C++和很多的C,然后就实现了。。

结束了,钻窝里睡会。。。。

【2016.3.22】作业 Word count 小程序的更多相关文章

  1. 个人项目作业-Word Count

    个人项目作业 1.Github地址 https://github.com/CLSgGhost/SE_work 2.项目相关需求 wc.exe 是一个常见的工具,它能统计文本文件的字符数.单词数和行数. ...

  2. 第二次作业之微信小程序

    2.1 介绍产品相关信息 你选择的产品是? 微信小程序 为什么选择该产品作为分析? 在等待了1年多以后,小程序终于在今年初上线,即速应用在H5领域的累计,便承接在小程序上.8月7日,即速应用的用户微信 ...

  3. [MapReduce_1] 运行 Word Count 示例程序

    0. 说明 MapReduce 实现 Word Count 示意图 && Word Count 代码编写 1. MapReduce 实现 Word Count 示意图 1. Map:预 ...

  4. 用python 实现录入学生作业情况的小程序

    写一个录入学生作业情况的一个程序 1.查看学生作业情况 2.录入学生作业情况 3.可以让输入3次,需要为空的情况 homeworks = { ‘张流量’: {‘2018.3.22’:”未交”,’201 ...

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

    #include <stdio.h> void main() { FILE *fp; , str, word, pu, ch; int g; str = ; word = ; pu = ; ...

  6. C++ Word Count 发布程序

    前段时间,模仿 Linux 系统下的 wc 程序,在 Windows 系统环境下使用 C/C++ 实现了一个相似的 WC 程序,只不过有针对性,针对的是 C/C++,Java 等风格的源代码文件. 此 ...

  7. 老男孩python学习之作业一购物小程序

    想学编程由来已久 始终没有个结果,痛心不已 如今再次捡起来,望不负期望,不负岁月 ......一万字的废话...... 先介绍一下我的自学课程吧 "路飞学城"的<python ...

  8. 微信小程序周报(第十三期)-极乐商店(store.dreawer.com)出品

    重要:极乐商店域名变更:wxapp.dreawer.com/变更为store.dreawer.com/ 每周一笑 当年刚学打篮球的时候,疯狂地迷恋上了乔丹,然后迷恋上了NIKE,更熟记了NIKE的那句 ...

  9. NO--13微信小程序,左右联动

    写在前面: 从2016年张小龙发布微信小程序这种新的形态,到2017年小程序的不温不火,再到今年小程序的大爆发,从一度刷爆朋友圈的‘头脑王者’,再到春节聚会坐在一起的火爆小游戏“跳一跳",都 ...

随机推荐

  1. 【Beta Scrum】冲刺!5/5

    1. 今日完成情况 人员 学号 分工 是否完成 完成情况 胡武成 031502610 解决短信内容,辅助web端解决在线编辑 Y 短信已解决,在线编辑已有解决方案 郭剑南 031502609 修改we ...

  2. Java面试——微服务

    1.什么是微服务?    就目前而言,对于微服务业界并没有一个统一的,标准的定义. 但通常而言,微服务架构是一种架构模式或者说是一种架构风格,它提倡将单一应用程序划分一组小的服务,每个服务运行在其独立 ...

  3. Linux基础第六课——grep|awk|sort|uniq

    管道符 | 前面的输出作为后面的输入 grep 可以理解为正则表达式 grep [参数] 文件名 -c 打印符合要求的行数 -v 打印不符合要求的行 -n 在输出符合要求的行的同时连同行号一起输出 - ...

  4. php5.4之分布式缓存memcache(windows7下安装配置)

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/qq1355541448/article/details/36663203 使用理由:就是为了频繁查询 ...

  5. HDU - 5078 水题

    题意:最大困难=距离 / 相邻时间 #include<cstring> #include<cstdio> #include<cmath> #define ll do ...

  6. Spring容器AOP的实现原理——动态代理(转)

    文章转自http://blog.csdn.net/liushuijinger/article/details/37829049#comments

  7. Mybatis学习总结(三)——SqlMapConfig.xml全局配置文件解析

    经过上两篇博文的总结,对mybatis中的dao开发方法和流程基本掌握了,这一节主要来总结一下mybatis中的全局配置文件SqlMapConfig.xml在开发中的一些常用配置,首先看一下该全局配置 ...

  8. oracle 相除后保留指定位数小数round()

    ) xxx from dual; XXX----------    3.8871

  9. Linux系列教程(五)——Linux常用命令之链接命令和权限管理命令

    前一篇博客我们讲解了Linux文件和目录处理命令,还是老生常淡,对于新手而言,我们不需要完全记住命令的详细语法,记住该命令能完成什么功能,然后需要的时候去查就好了,用的多了我们就自然记住了.这篇博客我 ...

  10. Promise使用时应注意的问题

    最近在使用axios库时遇到了个问题,后端接口报了500错误,但前端并未捕获到.1. 调用接口的业务代码如下: // 业务代码调用 axios({ url: url, method: 'post', ...