要求0:
作业地址:【https://edu.cnblogs.com/campus/nenu/2016CS/homework/2110】
要求1:
git仓库地址:https://git.coding.net/hero_HR/wf.git
要求2:
功能模块 |
具体阶段 |
预计时间(min) |
实际时间(min) |
功能1 |
具体设计 具体编码 测试完善 |
30 240 30 |
40 300 35 |
功能2 |
具体设计 具体编码 测试完善 |
35 200 30 |
∞ ∞ ∞ |
功能3 |
具体设计 具体编码 测试完善 |
40 200 35 |
∞ ∞ ∞ |
PSP2.1 |
任务内容 |
预估耗时(min) |
实际耗时(min) |
Planning |
计划 |
30 |
50 |
Estimate |
估计这个任务需要多少时间,并规划大致工作步骤 |
30 |
50 |
Development |
开发 |
1000 |
1035 |
Analysis |
需求分析 (包括学习新技术) |
60 |
65 |
Design Spec |
生成设计文档 |
45 |
50 |
Design Review |
设计复审 (和同事审核设计文档) |
0 |
0 |
Coding Standard |
代码规范 (为目前的开发制定合适的规范) |
30 |
50 |
Design |
具体设计 |
90 |
103 |
Coding |
具体编码 |
360 |
380 |
Code Review |
代码复审 |
70 |
80 |
Test |
测试(自我测试,修改代码,提交修改) |
130 |
150 |
Reporting |
报告 |
210 |
240 |
Test Report |
测试报告 |
120 |
140 |
Size Measurement |
计算工作量 |
45 |
45 |
Postmortem & Process Improvement Plan |
事后总结, 提出过程改进计划 |
45 |
55 |
预估耗时和实际耗时的差距原因:
1.大一大二训练的太少,第一次接触这种作业导致花费了一定的时间才大体搞明白题目的意思
2.基础薄弱,查资料翻书花费了大量的时间
要求3:
1.解题思路
拿到题目后,反反复复看了几遍,大体有了一个思路,先用要求的种种方式将文本文件读入,然后统计其中不重复的单词的数量,最终输出结果。看起来感觉很简单,但是对于一个没有什么编程实战经验而且只会C语言的菜鸡来说具体实现起来还是存在很答问题的。三个功能难度依次增大,功能一是基础,然后功能二三在功能一的基础之上再做改进即可。刚开始着手解决功能一时就遇到了很大的问题,如何将文本文件中的内容读入。既然不会就去学,但是在网上找了很久发现基本都是用非c语言编写的,又双叒叕看不懂了.......唉,算了,想了想还是从基础开始吧,找了一个和c更为相近一些的c++语言开始学习。嗯,现在也就学了三四天,很多东西还是不会,只是能大概的看懂一些框架。以后我会继续学习的。至于下面的代码,大多都是从网上或者书上找来的,想通过它们学习更多c++的相关知识。如果老师时间有限的话,就不用在这些程序上浪费太多的时间了!
2.代码
功能1:统计文件中不重复的单词数量
重难点:功能一的实现上主要的就在于文件的读入以及统计不重复单词的数量。用fgets()将文本文件逐行读入,然后通过循环条件语句累计文件中不重复单词的数量以及每个单词出现的次数。
代码片段:
int main() { int i=0,n=0; char a[100],text[1024]; FILE *fp; map<string,int>lea; fp=fopen("d:\input.txt","r"); while(fgets(text,1024,fp)!=NULL) //逐行读入文本文件的内容 { while(text[i]!='