2021秋软工实践第一次个人编程作业
| 这个作业属于哪个课程 | 构建之法-2021秋-福州大学软件工程 |
| 这个作业要求在哪里 | 2021秋软工实践第一次个人编程作业 |
| 这个作业的目标 | 实现一个程序功能,它可以对读入的C或C++代码文件进行不同等级的关键字提取。 |
| 学号 | 021900619 |
psp表格
| Personal software process stages | 预估耗时(分钟) | 预估耗时(分钟) |
|---|---|---|
| Planning 计划 | 40 | 30 |
| Estimate 估计这个任务需要多少时间 | ||
| Development开发 | ||
| Analysis 需求分析 (包括学习新技术) | 10 | 10 |
| Design Spec生成设计文档 | 40 | 90 |
| Design Review 设计复审 | 20 | 20 |
| Coding Standard 代码规范 (为目前的开发制定合适的规范) | 30 | 30 |
| Design具体设计 | 60 | 40 |
| Coding具体编码 | 30 | 40 |
| Code Review代码复审 | 60 | 90 |
| Test测试(自我测试,修改代码,提交修改) | 20 | 20 |
| Reporting报告 | ||
| Test Report 测试报告 | 20 | 30 |
| Size Measurement计算工作量 | 30 | 30 |
| Postmortem & Process Improvement Plan事后总结, 并提出过程改进计划 | 40 | 40 |
| Total合计 | 300 | 510 |
解题思路
打算用Python语言进行编程,任务分解成三部分:1.文件读取 2.关键词匹配 3.统计信息.由于该作业难度不是很大,因此免去了查资料,直接而进行代码编写。
代码设计
1.文件读取
读取文件并除去换行符
def readFile(path):
with open(path, 'r', encoding='utf-8') as f:
return f.read().replace("\n", "")
2.初始化关键词匹配表及结果保存容器
keyWords = ["auto", "break", "case", "char", "const", "continue", "default", "do", "double", "else", "enum", "extern",
"float", "for", "goto", "if", "int", "long", "register", "return", "short", "signed", "sizeof", "static",
"struct", "switch", "typedef", "union", "unsigned", "void", "volatile", "while"]
3.编写正则表达式
def countKeyWords(text, key_words):
'''计算关键词个数'''
return len(re.findall(f"(?:{'|'.join(key_words)})", text))
def countSwitch(text):
'''计算switch case结构个数'''
return [str(len(re.findall(r"case ",i))) for i in re.findall(r"switch(.*?)\}", text)]
def countIfElse(text):
'''计算if else'''
return len(re.findall(r"if\(.*?\){.*?}.*?else{.*?}",text))
def countIfElseifElse(text):
'''计算if-elseif-else'''
return len(re.findall(r"if.*?\{.*?\}.*?(?:else if.*?\{.*?\}.*?)+else.*?\{.*?\}",text))
相关推荐
高校技术转移办公室人员如何高效开展技术需求挖掘工作?.docx
科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。
科技中介服务机构如何提升服务的专业性与用户粘性?.docx
科技中介服务机构如何提升服务的专业性与用户粘性?
高校技术转移办公室人员在组织科研成果展示时,如何提升推介材料的专业性与吸引力?.docx
科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。
三相并网逆变器无功功率扰动+孤岛检测控制算法仿真【参考文献+仿真】
内容概要:本文系统梳理了一套面向电力电子与新能源并网领域的仿真研究资源,聚焦三相并网逆变器的关键控制技术,涵盖无功功率扰动、孤岛检测算法、低电压穿越(LVRT)、中点电位平衡、虚拟同步发电机(VSG)、下垂控制、模型预测控制(MPC)、准PR控制及LCL滤波器设计等核心技术。资源包含多种逆变器拓扑结构(如T型三电平、Z源、ANPC、四桥臂等)的Simulink仿真模型,并结合扫频法进行正负序阻抗建模与稳定性分析,强调通过复现经典科研案例提升实际科研能力,适用于电力系统稳定性、微电网运行与可再生能源并网等方向的研究与验证。; 适合人群:电力电子、电气工程及其自动化、新能源科学与工程等相关专业的高校研究生、科研人员及从事光伏、储能逆变器开发的工程技术人员,需具备MATLAB/Simulink仿真基础和一定的电力系统控制理论知识。; 使用场景及目标:① 掌握三相并网逆变器在孤岛检测、无功调节、不平衡电网等复杂工况下的先进控制策略设计与仿真方法;② 借助提供的仿真模型与参考文献快速搭建科研平台,用于论文复现、课题开发或项目验证;③ 深入理解VSG、MPC、阻抗建模与下垂控制等关键技术的实现机制与工程应用路径。; 阅读建议:建议结合文中提供的网盘链接与公众号“荔枝科研社”获取完整仿真模型与参考资料,按照目录顺序循序渐进学习,注重理论推导与仿真实践相结合,优先复现基础模型再进行参数优化与创新拓展。
香橙派5-uefi-edk2-spi-flash镜像
香橙派5-uefi-edk2-spi-flash镜像


