zoukankan      html  css  js  c++  java
  • 软工作业PSP与单元测试训练

    任务说明(二选一):

    一、实现模块判断传入的身份证号码的正确性;

    二、实现模块判断传入的电子邮箱账号的正确性;

    实现要求:

    一、实现功能模块;

    (1)应实现身份证号码的位数是否正确。

    (2)应验证身份证号码是否属于中国的各大省份。

    (3)应实现对身份证号码最后一个位数字和X的验证。

    (4)能够根据身份号码输出相应的信息。(省份,出生年月,性别)

    二、针对所实现的模块编写对应的单元测试代码;

    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>

     char arr[19];//要验证的身份证号码

     int   brr[17]={7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10,5, 8, 4, 2};//身份证前17位的系数

     char  crr[11]={1, 0, -1, 9, 8, 7, 6, 5, 4, 3, 2};  //身份证第18位验证码

      int sum=0;

      int loop=0;

      printf("请输入您的身份证号码 ");

      scanf("%s",arr);

      for(loop;lopp<17;loop++)

      sum=sum+(arr[loop]-‘0’)*brr[loop];

      if(sum%11==2){

      if(arr[17]=='X')

      printf("合法 ");

      else

         printf("不合法 ");

      }

         else{

         if((arr[17]-'0')==crr[sum%11])

           printf("合法 ");

             else

            printf("不合法 ");

        return 0;

      } 

    }
      printf("a您输入的身份证号为,n此身份证号有效,具体信息如下:);
        printf("所在地:");  
        switch(area) {  
            case 110000: printf("北京市");break;  
            case 120000: printf("天津市");break;  
            case 130000: printf("河北省");break;  
            case 140000: printf("山西省");break;  
            case 150000: printf("内蒙古自治区");break;  
            case 210000: printf("辽宁省");break;  
            case 220000: printf("吉林省");break;   
            case 230000: printf("黑龙江省");break;  
            case 310000: printf("上海市");break;  
            case 320000: printf("江苏省");break;  
            case 330000: printf("浙江省");break;  
            case 340000: printf("安徽省");break;  
            case 350000: printf("福建省");break;  
            case 360000: printf("江西省");break;  
            case 370000: printf("山东省");break;  
            case 410000: printf("河南省");break;    
            case 420000: printf("湖北省");break;  
            case 430000: printf("湖南省");break;  
            case 440000: printf("广东省");break;  
            case 450000: printf("广西壮族自治区");break;  
            case 460000: printf("海南省");break;  
            case 500000: printf("重庆市");break;  
            case 510000: printf("四川省");break;  
            case 520000: printf("贵州省");break;  
            case 530000: printf("云南省");break;  
            case 540000: printf("西藏自治区");break;  
            case 610000: printf("陕西省");break;  
            case 620000: printf("甘肃省");break;   
            case 630000: printf("青海省");break;    
            case 640000: printf("宁夏回族自治区");break;   
            case 650000: printf("新疆维吾尔自治区");break;  
        }  
        printf("
    "); 
        printf("出生日期:%d%d%d%d年%d%d月%d%d日
    ", a[7],a[8],a[9],a[10], a[11],a[12], a[13],a[14]);  
        if(a[17]%2==0)  
            printf("性别:女
    ");  
        else  
            printf("性别:男
    ");
        printf("
    "); 
        printf("
    "); 
        system("pause");  
        return 0;  
    }

     

    三、需要按PSP流程进行工作量估算,填写任务清单工作量估算表。

    任务清单工作量估算表:

    PSP阶段

    时间估算(小时)

    实际实际(小时)

    计划

    估计每个阶段的时间成本

    0.3

     0.2

    开发

    需求分析

     0.5

     0.5

    系统设计

     0.6

     1

    设计复审

     0.5

     0.5

    代码实现

     1

     0.8

    代码复审

     0.6

     0.7

    测试

     0.2

     0.2

    报告

    测试报告

     1

     0.8

    总结

     0.6

     0.6

     

     

  • 相关阅读:
    postgresql查询栅格数据范围(extent)
    raster导入postgres Windows命令
    Python使用XML操作mapnik,实现复杂标注(Multi line text symbolizer)
    Leaflet使用vector tiles 标注label设置
    Leaflet使用vector tiles样式设置
    Leaflet调用geoserver发布的矢量切片
    java 生成透明背景图片
    java 用RGB生成图片动态命名
    POI拆分单元格,并设置拆分后第一个cell的值为空cell的值
    洛谷 P1003 铺地毯 题解
  • 原文地址:https://www.cnblogs.com/zx19960629/p/8577144.html
Copyright © 2011-2022 走看看