https://github.com/flames-z/-wc
一、 WC 项目要求
wc.exe 是一个常见的工具,它能统计文本文件的字符数、单词数和行数。这个项目要求写一个命令行程序,模仿已有wc.exe 的功能,并加以扩充,给出某程序设计语言源文件的字符数、单词数和行数。
实现一个统计程序,它能正确统计程序文件中的字符数、单词数、行数,以及还具备其他扩展功能,并能够快速地处理多个文件。
具体功能要求:
程序处理用户需求的模式为:
wc.exe [parameter] [file_name]
基本功能列表:(实现)
wc.exe -c file.c //返回文件 file.c 的字符数
wc.exe -w file.c //返回文件 file.c 的词的数目
wc.exe -l file.c //返回文件 file.c 的行数
扩展功能:(未实现)
-s 递归处理目录下符合条件的文件。
-a 返回更复杂的数据(代码行 / 空行 / 注释行)。
二、PSP2.1表格
SP2.1表格
PSP2.1 |
Personal Software Process Stages |
预估耗时(分钟) |
实际耗时(分钟) |
Planning |
计划 |
20 | 30 |
Estimate |
估计这个任务需要多少时间 |
20 | 10 |
Development |
开发 |
180 | 240 |
Analysis |
需求分析 (包括学习新技术) |
100 | 300 |
Design Spec |
生成设计文档 |
90 | 30 |
Design Review |
设计复审 (和同事审核设计文档) |
20 | 20 |
Coding Standard |
代码规范 (为目前的开发制定合适的规范) |
15 | 15 |
Design |
具体设计 |
50 | 100 |
Coding |
具体编码 |
60 | 60 |
Code Review |
代码复审 |
60 | 60 |
Test |
测试(自我测试,修改代码,提交修改) |
120 | 240 |
Reporting |
报告 |
30 | 30 |
Test Report |
测试报告 |
30 | 30 |
Size Measurement |
计算工作量 |
15 | 30 |
Postmortem & Process Improvement Plan |
事后总结, 并提出过程改进计划 |
30 | 15 |
合计 |
840 | 1160 |
三、解题思路
通过在C语言main函数给两个形参(argc *char argv[])传参,来实现将文档路径传入函数的目的。同时,argc 记下了在命令行中输入的文件数,由agrv[]数组来存储路径,如此可以实现同时处理多个文件。
四、代码
五、测试
1、一个文档
2、两个文档
六、小结
1、这次软件工程的个人作业,由于不太清楚如何用 C语言读取一个文档,于是查找了一些相关函数和知识点。
2、之前不清楚原来C的main函数还可以通过操作系统的命令行传参,通过这次学习了解到了。
3、之前没有开发软件的经验,这次实践让我充分认识到了开发软件需要的一系列,比想象中复杂的多的流程,即便只是个人的项目。
---恢复内容结束---