软件工程网络15结对编程作业

软件工程网络15结对编程

链接

1.需求分析:针对现有代码的改进分析,新开发功能的分析。

  • 能自己决定题目的数量
  • 题目在加减乘除范围内
  • 能判断答案是否对错

    本次我们用的是c语言来写的四则运算代码实现,没有参考给出的代码,所以运行界面没有实现...

    2.程序设计:针对新开发功能做设计,建议使用思维导图。

    1109880-20180325170831775-1926520826.png

3.代码展示:展示每个功能的核心代码。

我们用的是c来实现的四则运算,并没有参考链接上的java代码。

  • 运算符号的创建
char getOpe()//get Operator
{
    char a[]={'+','-','*','/'};
    int i;
    srand(time(NULL));
    i=rand()%4;

    return a[i];
}
  • 运算过程
void getProblem()//get one question 
{
    int answer,number1,number2,a;
    char ope;
int number[2],i;
     srand((int)time(0));
  
     for(i=0;i<2;i++)
     { 
         number[i]=(rand()%10);
     }
      printf("test:\n");
      number1=number[0];
      number2=number[1];
      ope=getOpe();
      if(ope=='+')
      {
        a=(number1 + number2);
      }
      else if(ope=='-') 
      {
         a=(number1 - number2);
      }
      else if(ope=='*')
      {
          a=(number1 * number2);
      }
      else
      {
          a=(number1 / number2);
      }
      printf("%d %c %d = \n",number1,getOpe(),number2);
      printf("this question is :  ");
      scanf("%d",&answer);
      
      if(answer==a)
      {
          printf("congratulations, this answer is correct !\n");
      }
      else 
      {
          printf("Unfortunately, the answer is wrong !\n");
      }
  
}
  • 题目数量实现
void getnumber(int a)//get some question you want to
{
    int i;
   for(i=0;i<a;i++)
   {

    getProblem();
   }
}
void main()
{
    int a,k;

    

    do 
    {
        printf("please enter the number of question you want to answer:");
        scanf("%d",&a);
        getnumber(a);
        printf("Do you have some questions? yes answer 1 and no answer  2 ");
        scanf("%d",&k);
    }
        while(k==1);

}

4.程序运行:程序运行及每个功能的使用截图。

你本次要做题的数目
1109880-20180325191203466-1261420764.png

聪明的他做对了一题
1109880-20180325191249479-1174175330.png

粗心大意了啊做错了
1109880-20180325191322393-1583516630.png

PSP

PSP2.1个人开发流程估计耗时实际耗时
. Planning计划2520
· Estimate明确需求和其他相关因素,估计每个阶段的时间成本108
. Development开发350450
· Analysis需求分析3050
· Design Spec生成设计文档1520
· Design Review设计复审2550
· Coding Standard代码规范2016
· Design具体设计5090
· Coding具体编码75 100
· Coding Reivew代码复审2530
· Test测试1510
. Reporting报告2530
·测试报告515
·计算工作量510
·并提出过程改进计划1015

5.小结感受:结对编程真的能够带来1+1>2的效果吗?通过这次结对编程,请谈谈你的感受和体会。

在我们看来,只有你自己做了一次代码实现过程你才能真正的了解到编程语言的强大之处,两个人在针对算数的运算这块碰到了难题,储存和检验对错的呈现一直没能够如愿的实现。但结对的编程好处在与你不是一个人在思考,有同伴的交流就有了思维的碰撞,想法和问题也就多了起来,能够发现对方的不足,1+1>2是肯定的。

转载于:https://www.cnblogs.com/Einsten/p/8646735.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值