寒假作业2

这个作业属于哪个课程 软件工程
这个作业要求在哪里 第二次作业
这个作业的目标 <学习使用github 代码规范制定 需求的分析>
作业正文 ....
其他参考文献 CSDN、菜鸟教程

Github仓库地址

(https://github.com/keshenxi/InfectStatistic-main)

PSP表格

PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
Planning 计划 120 180
Estimate 估计这个任务需要多少时间 900 720
Development 开发 700 800
Analysis 需求分析 (包括学习新技术) 100 60
Design Spec 生成设计文档 50 60
Design Review 设计复审 10 10
Coding Standard 代码规范 (为目前的开发制定合适的规范) 60 45
Design 具体设计 60 30
Coding 具体编码 300 240
Code Review 代码复审 20 20
Test 测试(自我测试,修改代码,提交修改) 240 200
Reporting 报告 60 80
Test Report 测试报告 30 30
Size Measurement 计算工作量 30 45
Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 20 110
合计 1020 900

解题思路描述

看到这个题,我都不知道要做什么,对于主题的代码,看了好久也没有头绪,直到一些大佬们开始交作业了,我才慢慢看懂了这个题目到底要求的是什么。
看了很多遍之后呢,我就慢慢有来一个想法
首先,需要一个省类,来放要记录的那些数据,以及输出。
让后就是输入命令,解析命令,输出结果。
好像就没了。

代码说明

所需要的省类

private static final int provinceNum = 32;
public static String provinces[] = {
		"全国","安徽","北京","重庆","福建","甘肃","广东","广西","贵州","海南","河北","河南",
		"黑龙江","湖北","湖南","吉林","江苏","江西","辽宁","内蒙古","宁夏","青海","山东","山西",
		"陕西","上海","四川","天津","西藏","新疆","云南","浙江"
};

//省类,用于体现各种信息
public class Province 
{

    String provinceName; 
    int ip; 
    int sp;
    int cure;
    int dead;

    Province(String provinceName, int ip, int sp, int cure, int dead) {
        this.provinceName = provinceName;
        this.ip = ip;
        this.sp = sp;
        this.cure = cure;
        this.dead = dead;
    }

命令操作

while(argv[num])
    {
        switch(mapListValue[argv[num]])
        {
            case -log:
                if(argv[num+1])
                {
                    logPath = argv[num+1];
                    num++;
                }
                break;
            case -out:
                if(argv[num+1])
                {
                    outPath = argv[num+1];
                    num++;
                }
                break;
            case -date:
                if(argv[num+1][0] != '-')
                {
                    date = argv[num+1];
                    num++;
                }
                break;
            case -type:
                while((argv[num+1]) && (argv[num+1][0] != '-'))
                {
                    if(strcmp(argv[num+1] ,"ip") == 0 ||
                        strcmp(argv[num+1] ,"sp") == 0 ||
                        strcmp(argv[num+1] ,"cure") == 0 ||
                        strcmp(argv[num+1] ,"dead") == 0)
                    {
                        type.push_back(argv[num+1]);
                    }
                    else
                    {
                        cout<<"指令错误: "<<argv[num+1]<<"\n";
                        exit(0);
                    }
                    num++;
                }
                break;
            case -province:
                while((argv[num+1]) && (argv[num+1][0] != '-'))
                {
                    province.push_back(GbkToUtf8(argv[num+1]));
                    mapProvince[GbkToUtf8(argv[num+1])].isPrint = true;
                    num++;
                }
                break;
            default:
                if(argv[num][0] == '-')
                {
                    cout<<"指令错误: "<<argv[num]<<"\n";
                }
                break;
        }
        num++;
    }

测试截图









代码规范链接

https://github.com/keshenxi/InfectStatistic-main/blob/master/221701211/codestyle.md

心路历程与收获

一开始就是觉得难,写的时候也觉得难,还好有大佬的肩膀可以依靠,慢慢摸着石头过河就还是能过去的

5个仓库

1.【Java学习+面试指南】 一份涵盖大部分Java程序员所需要掌握的核心知识。

(https://github.com/Snailclimb/JavaGuide)

2.一个走心的 Java Web 入门开发教程

(https://github.com/muxiao167/Heart-First-JavaWeb)

3. 互联网 Java 工程师进阶知识完全扫盲:涵盖高并发、分布式、高可用、微服务、海量数据处理等领域知识,后端同学必看,前端同学也可学习

(https://github.com/doocs/advanced-java)

4.27天成为Java大神

(https://github.com/DuGuQiuBai/Java)

5.java项目实战练习

(https://github.com/HelloWorld521/Java)

posted @ 2020-02-14 21:23  ?熙哥  阅读(163)  评论(1编辑  收藏  举报