标签:dev 读取文本 http 运行 table 命令行 tps 表格 report
---恢复内容开始---
一、Github地址:https://github.com/S1mon-fq/S1mon1
二、PSP表格:
PSP2.1 | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | 20 | 20 |
· Estimate | · 估计这个任务需要多少时间 | 20 | 20 |
Development | 开发 | 660 | 760 |
· Analysis | · 需求分析 | 45 | 45 |
· Design Spec | · 生成设计文档 | 45 | 50 |
· Design Review | · 设计复审 | 40 | 60 |
· Coding Standard | · 代码规范 | 20 | 30 |
· Design | · 具体设计 | 60 | 60 |
· Coding | · 具体编码 | 360 | 500 |
· Code Review | · 代码复审 | 60 | 60 |
· Test | · 测试(自我测试,修改代码,提交修改) | 60 | 70 |
Reporting | 报告 | 120 | 1140 |
· Test Report | · 测试报告 | 60 | 85 |
· Size Measurement | · 计算工作量 | 20 | 15 |
· Postmortem & Process Improvement Plan | · 事后总结, 并提出过程改进计划 | 40 | 40 |
合计 | 830 | 1030 |
三、解题思路
1.一开始看到题目需要统计字符数跟单词数,我想到的是C里面的算法,读取文本然后用不同的算法就可以统计其中所需要统计的项目,而且对Java也不熟练,所以选择用C来实现。
2.决定好要用C来实现,想好实现每个功能的算法,构思实现统计字符数时不确定如何可以更全面地实现,上网查找了资料,使用了最原始的方法,然后在主函数用了argc、argv函数。
3.题目需要程序处理用户需求的模式为:wc.exe [parameter] [file_name],通过向同学请教并上网搜查资料,得知可用argc、argv函数进行传参,就可以通过命令行来实现功能。
4.一开始以为-a的实现跟基本功能一样,后面发现可以合起来统计。
四、设计实验过程
一共五个函数,三个实现基本功能,一个实现-a的功能,还有一个主函数,主函数调用三个实现基本功能的函数和实现-a功能的函数,输出的是-w、-c、-l函数的返回值
和-a函数的输出。
主函数:
基本功能列表:
wc.exe -c file.c //返回文件 file.c 的字符数
wc.exe -w file.c //返回文件 file.c 的词的数目
wc.exe -l file.c //返回文件 file.c 的行数
扩展功能:
-s 递归处理目录下符合条件的文件。(未实现)
-a 返回更复杂的数据(代码行 / 空行 / 注释行)。
[file_name]: 文件或目录名,可以处理一般通配符。
高级功能:
-x 参数。这个参数单独使用。如果命令行有这个参数,则程序会显示图形界面,用户可以通过界面选取单个文件,程序就会显示文件的字符数、行数等全部统计信息。(未实现)
五、测试运行
测试文件:
空文件:
只有一个字符的文件:
只有一行的文件:
只有一个词的文件:
一个典型的源文件:
以上可以看出基本功能都可以实现
对源文件实现-a功能:
六、收获和总结
1.不足:不太清楚C怎么做图形界面,递归处理目录下符合条件的文件也不太会,所以这两个功能都没能实现
2.由于自己的实操能力不强,只实现了比较简单的基本功能和一个扩展功能,整个编程过程中,我觉得最难的部分在于怎么能用命令行实现,向同学请教并查找了资料,第一次用argv、argc函数,一直在修改,倒是基本功能比较快就写好了,写代码还是熟能生巧。接下来希望自己去学习用python编程。
标签:dev 读取文本 http 运行 table 命令行 tps 表格 report
原文地址:https://www.cnblogs.com/S1mon/p/11581970.html