2021秋软工实践第一次个人编程作业

这个作业属于哪个课程链接: https://bbs.csdn.net/forums/fzuSoftwareEngineering2021.
这个作业要求在哪里链接: https://bbs.csdn.net/topics/600574694.
这个作业的目标对markdown的进一步应用,对编程思维的开拓
学号031902414
GitHub地址链接: https://github.com/.

PSP表

PSPPersonal Software Process Stages预估耗时(分钟)实际耗时(分钟)
Planning计划
Estimate ·估计这个任务需要多少时间720900
Development开发60120
Analysis ·需求分析 (包括学习新技术)6075
Design Spec· 生成设计文档6090
Design Review· 设计复审3060
Coding Standard ·代码规范 (为目前的开发制定合适的规范)3030
Design· 具体设计4540
Coding· 具体编码150140
Code ReviewPlanning· 代码复审计划3025
Test· Estimate· 测试(自我测试,修改代码,提交修改)· 估计这个任务需要多少时间120150
ReportingDevelopment报告6060
Postmortem & Process Improvement Plan· Design Review ·事后总结, 并提出过程改进计划· 设计复审3060
· 合计675850

Git部分

仓库链接

链接: https://github.com/nidemingz/work.

代码部分

语言选择

c++

解题思路

因为是对关键字进行判断,所以首先是要把关键字列出,储存,方便之后对每一个字符串的判断。
在这里插入图片描述

对于这道题,第二步就是对文件进行读取。
在这里插入图片描述

在打开文件后,要对文件代码每一行进行逐个字符串进行提取,分析。
在这里插入图片描述

在这里插入图片描述

在提取完字符串之后,就要进行关键字判断。这里选择的是用 <string.h> 中的 strcmp字符串比较函数(若 str1=str2,则返回零;若 str1<str2,则返回负数;若 str1>str2,则返回正数。)在比较途中,针对 switch、case、if—else、if—elseif—else 进行计数。
在这里插入图片描述

对于 if—else 结构,主要检查 else 之前是 else-if 还是 if 如果是 else—if 则判断为 if-elseif-else 结构,然后找到这个 if-elseif-else 结构的第一个 if 字符,将这个结构忽略,即从栈中移除这一个 if-elseif-else 的全部字符,再开始进行下一次检查。
在这里插入图片描述

最后根据输入的 level进行输出。
在这里插入图片描述

单元测试

正确性

在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

后续问题

关于关键字检测

在关键词前后必须有空格,才能检查到,如果关键词前后有但不限于与括号,冒号,就检测错误。这个属于字符串输入时未检测到符号问题,会在后续进行更改。

注释

现还未针对注释进行修改,在注释中拥有关键字也会进入计数,将在之后打补丁。(已添加)

变量与函数

部分自定义的变量与函数也会因为符号或者下标造成误判。(已添加)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值