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. 排序算法 java实现2

    继续排序算法 4.冒泡排序 从第一个开始,跟后面一个数比较,如果比后面大就交换位置,这样没完成一轮,就可以把最大的选出来 public static <T extends Comparable& ...

  2. 【LeetCode】028. Implement strStr()

    Implement strStr(). Return the index of the first occurrence of needle in haystack, or -1 if needle ...

  3. spark 单机版安装

    jdk-8u73-linux-x64.tar.gz hadoop-2.6.0.tar.gz scala-2.10.6.tgz spark-1.6.0-bin-hadoop2.6.tgz 1.安装jdk ...

  4. 微信无法跳转appstore总结--应用宝微下载申请

    以前是有方法,可以实现微信下跳转appstore的. 大概就是把url改为:http://mp.weixin.qq.com/mp/redirect?url="跳转url"(可编码也 ...

  5. CentOS6.5 下MySQL傻瓜式安装

    为了为服务器上装mysql我先在虚拟机上练习了一下特此记录并分享; 注:参考文章https://www.cnblogs.com/xiaoluo501395377/archive/2013/04/07/ ...

  6. BZOJ4520:[CQOI2016]K远点对

    浅谈\(K-D\) \(Tree\):https://www.cnblogs.com/AKMer/p/10387266.html 题目传送门:https://lydsy.com/JudgeOnline ...

  7. dockerfile mysql

    FROM centos6.6-mysql5.5:0.0.4 MAINTAINER syberos:wangmo RUN mv /etc/my.cnf /etc/my.cnf.bak ADD my.cn ...

  8. MSSQL2008 常用sql语句

    一.基础 1.说明:创建数据库 Create DATABASE database-name 2.说明:删除数据库 drop database dbname 3.说明:备份sql server --- ...

  9. Powershell使用SSH

    在编写Powershell脚本时,有时会需要和Linux机器进行交互.所以这时就需要在Powershell中使用SSH. 本文将介绍如何在Powershell中安装SSH模块,以及如何使用ssh命令. ...

  10. Azure上批量创建OS Disk大于30G的Linux VM

    Azure上VM的OS盘的大小在创建时是固定的.Windows是127G,Linux是30G.如果需要批量创建的VM的OS Disk有更大的容量.可以考虑用下面的方法实现. 1 创建一台有Data-d ...