课后作业2

1.在文章开头写出自己目前写过的代码量以及自己的码云项目地址。

答:几千行

没上传到码云

  1. 给出PSP表格。

PSP2.1

Psp

预估耗时(分钟)

实际耗时(分钟)

Planning

计划

10

20

Estinate

估计任务需要多少时间并规划大致工作步骤

60

40

Development

开发

180

360

Analysis

需求分析(包括学习新技术)

60

60

Design Spec

生成设计文档

60

30

Design Review

设计复审(和同事审核设计文档)

40

10

Coding Standard

代码规范(为目前的开发制定合适的规范)

40

50

Design

具体设计

120

150

Coding

具体编码

120

180

Code Review

代码复审

40

60

Test

测试(自我测试,修改代码,提交修改)

20

30

Reporting

报告

20

40

Test Roport

测试报告

20

20

Size Measurement

计算工作量

20

10

Postmorten&Process Inporovement Plan

事后总结,并提出过程改进计划

20

40

Summary

合计

830

1100

 

  1. 解题思路描述。即刚开始拿到题目后,如何思考,如何找资料的过程。

答:(1先把整个表达式输入进来,
2然后判断字符串中的每个字符是不是数字,
3如果是数字赋予一个不是就赋予另外一个值
4然后调用计算函数,求结果

(5)然后百度

(6)再考虑括号分数运算等问题

(7)然后再百度

4.设计实现过程。设计包括代码如何组织,比如会有几个类,几个函数,他们之间关系如何,关键函数是否需要画出流程图?单元测试是怎么设计的?

答:我觉得不需要画流程图

单元测试的设计:先准备数据,然后调用方法,return结果

5.记录在改进程序性能上所花费的时间,描述你改进的思路,并展示一张性能分析图(由VS 2017的性能分析工具自动生成),并展示你程序中消耗最大的函数。

6.代码说明。展示出项目关键代码,并解释思路与注释说明。

while (ch!='\n') {

if (i==0)

scanf("%f",&a[i]);

else

{

 scanf("%c",&ch);

if(ch=='\n')

break;

scanf("%f",&a[i]);

}

n=arithmetic(n,ch,a[i]);

i++;

}

 

7.结合在构建之法中学习到的相关内容与个人项目的实践经历,撰写解决项目的心路历程与收获。

写代码之前思路还挺清晰的,后来发现预想的和现实差距太多了,终于发现自己不会的地方很多;收获还挺多的,最重要的是写代码要有足够的耐心

 

 

代码如下:

#include<stdio.h>

float arithmetic(float x,char ch,float y)

{

switch (ch) {

    case '+' : return (x+y); break;

  case '-' : return (x-y); break;

    case '*' : return (x*y); break;

   case '/' : return (x/y); break;

   }

}

int main()

{

float a[20];

float n=1;

char ch='*';

int i=0;

printf("Enter an expression:");

while (ch!='\n') {

if (i==0)

scanf("%f",&a[i]);

else

{

        scanf("%c",&ch);

if(ch=='\n')

break;

scanf("%f",&a[i]);

}

n=arithmetic(n,ch,a[i]);

i++;

}

printf("Value of expression:%.1f",n);

return 0;

}

 

posted @ 2018-09-19 20:39  九分笑容  阅读(160)  评论(1)    收藏  举报