PSP2.1

PSP阶段

预估耗时

(分钟)

实际耗时

(分钟)

Planning

计划

 20  20

· Estimate

· 估计这个任务需要多少时间

20   20

Development

开发

150  150 

· Analysis

· 需求分析 (包括学习新技术)

 10 10 

· Design Spec

· 生成设计文档

 10  10

· Design Review

· 设计复审 (和同事审核设计文档)

10  10 

· Coding Standard

· 代码规范 (为目前的开发制定合适的规范)

10   10

· Design

· 具体设计

20  20 

· Coding

· 具体编码

80 80 

· Code Review

· 代码复审

 10  10

· Test

· 测试(自我测试,修改代码,提交修改)

20   20

Reporting

报告

90  90 

· Test Report

· 测试报告

60  60 

· Size Measurement

· 计算工作量

30   30

· Postmortem & Process Improvement Plan

· 事后总结, 并提出过程改进计划

10  10 
 

合计

 550

github 项目地址:https://github.com/zhaozhiyu/wordcount

解题思路:控制判断“空 “ ”逗号“ ”换行符“ “字符”,对文件内容进行判断,并输出结果到另一个文件。

程序实现:在控制台传入命令,并且调用wordcount.exe。传入文件路径实现需求功能(-c-w,-l,-o)。

代码说明

void analyse()
{
 while ((c = fgetc(file)) != EOF)//文件字符判定,字符数++
 {
  chars++;
  if (c !=' '&& c != ','&&c != '\n') //分隔符判定,单词数++
  {
   words++;
   while ((c = fgetc(file)) != EOF)
   {
    chars++;
    if (c != ' '&& c != ','&& c != '\n')
    {
    }
    else if (c == '\n')//换行符号判定,行数++
    {
    
     lines++;
     break;
    }
    else if (c == ' ' || c == ','|| c == '\n')
     break;
    else
    {
     break;
    }
   }
  }

else if (c == '\n')//若改行为最后一行,无法判定,行数++
  {  
   lines++;
  }
 }
}

测试命令

wordcount.exe -c file.txt

wordcount.exe -w file.txt

wordcount.exe -l file.txt

wordcount.exe -o file.txt

更多的测试功能过程:https://github.com/zhaozhiyu/zhaoshidaye/wordcount

参考文献链接

http://www.cnblogs.com/xinz/archive/2011/10/22/2220872.html

wrodcount的更多相关文章

  1. Spark:一个高效的分布式计算系统

    概述 什么是Spark ◆ Spark是UC Berkeley AMP lab所开源的类Hadoop MapReduce的通用的并行计算框架,Spark基于map reduce算法实现的分布式计算,拥 ...

  2. hadoop2.0初识1.1

    1.伪分布式hdfs文件系统的搭建(单节点文件系统) 1.1.根据上节的讲解,配置主机映射.jdk和解压hadoop压缩包 1.2.配置namenode 在/opt/modules/hadoop-2. ...

  3. 【转】科普Spark,Spark是什么,如何使用Spark

    本博文是转自如下链接,为了方便自己查阅学习和他人交流.感谢原博主的提供! http://www.aboutyun.com/thread-6849-1-1.html http://www.aboutyu ...

  4. hadoop-mapreduce-(1)-统计单词数量

    编写map程序 package com.cvicse.ump.hadoop.mapreduce.map; import java.io.IOException; import org.apache.h ...

  5. 【转】Spark:一个高效的分布式计算系统

    原文地址:http://tech.uc.cn/?p=2116 概述 什么是Spark Spark是UC Berkeley AMP lab所开源的类Hadoop MapReduce的通用的并行计算框架, ...

  6. Spark:一个高效的分布式计算系统--转

    原文地址:http://soft.chinabyte.com/database/431/12914931.shtml 概述 什么是Spark ◆ Spark是UC Berkeley AMP lab所开 ...

  7. 初步了解Spark生态系统及Spark Streaming

    一.        场景 ◆ Spark[4]: Scope:  a MapReduce-like cluster computing framework designed for low-laten ...

  8. centos6.5搭建hadoop单节点

    1.添加用户 groupadd  hadoop useradd -d /home/hadoop -m hadoop -g hadoop passwd hadoop    修改密码 付给用户sudo权限 ...

  9. spark提交至yarn的的动态资源分配

    1.为什么开启动态资源分配 ⽤户提交Spark应⽤到Yarn上时,可以通过spark-submit的num-executors参数显示地指定executor 个数,随后,ApplicationMast ...

随机推荐

  1. Brackets (区间DP)

    个人心得:今天就做了这些区间DP,这一题开始想用最长子序列那些套路的,后面发现不满足无后效性的问题,即(,)的配对 对结果有一定的影响,后面想着就用上一题的思想就慢慢的从小一步一步递增,后面想着越来越 ...

  2. [BZOJ5251][多省联测2018]劈配

    bzoj luogu sol 从前往后依次加边,每次对一个人做完劈配后就把当前这个残余网络存下来.这样第二问就可以二分排在第几名然后check一下在对应排名的残余网络上还能不能再增广. 给网络流开结构 ...

  3. LeetCode Target Sum

    原题链接在这里:https://leetcode.com/problems/target-sum/description/ 题目: You are given a list of non-negati ...

  4. Qt Creator 中自动补全的快捷键描述

    在TextEdit中的completeThis

  5. mysql之 Innobackupex全备恢复(原理、演示)

    一.  Innobackupex恢复原理    After creating a backup, the data is not ready to be restored. There might b ...

  6. Azure VM从ASM迁移到ARM(一)

    Azure的IaaS有ASM和ARM两个版本,ARM的一些优点前面已经聊过很多了.ARM有更细的管理颗粒度,更多的功能等. 如果想从ASM迁移到ARM,目前有两类方法可以实现: 1. Azure平台支 ...

  7. POJ3104(二分搜索)

    Drying Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 13057   Accepted: 3358 Descripti ...

  8. Spring MVC 项目示例

    Spring MVC是Spring Framework的一部分,是基于Java实现MVC的轻量级Web框架.Spring的web框架围绕DispatcherServlet设计, 作用是将请求分发到不同 ...

  9. [转] pip镜像升级报警 -trust-host问题解决方案

    pip升级到7.0以后,在使用http镜像进行包安装及升级的时候往往会有如下提示: Collecting beautifulsoup4The repository located at mirrors ...

  10. java代码输入流篇2

    总结: 方法.和之前的有不同,但是名字太长了+++++ package com.aini; import java.io.*; public class ghd { public static voi ...