20194668+自动生成四则运算题第一版报告

一. 需求分析

     在计算机飞速发展的今天,传统的人工出题方式已经接近淘汰。人工出题效率低下,既费时也耗力,而自动生成题目的系统就很好的解决了这个问题,在较短时间生成一套习题。它既可以控制难度也可以控制出题的数量,极大地方便了出题人。

二. 功能设计

   1.基础功能

      自动生成加减乘除四则运算

   2.拓展功能

  •  题目数量可控
  •  操作数存在可控范围
  •  操作数是否含负数

三. 设计实现

    我使用C语言实现了自动生成四则运算题,使用了一个主函数和自动生成随机数函数,其包含在头文件<stdio.h>、<stdlib.h>、      <time.h>中。

四. 试运行

 

 

五.   主要代码

 1.可以自己控制出题的数量。

1 printf("\n请输入需要生成的题目数量: ");
2 scanf("%d",&N); 

 

 2.随机生成运算数,并且判断是否可以为负数。 

 

for(i=0;i<N;i++)
             {
                 if(m==2)
                   {
                           a=rand()%100;
                           b=rand()%100;          
                 }
                   else if(m==3)
                   {
                           a=rand()%100*(rand()%100>0.5?1:-1);
                           b=rand()%100*(rand()%100>0.5?1:-1);  
                   }

3.随机生成运算符。

k=rand()%4+1;
                 printf("%d",a);
                 switch(k)
                 {
                    case 1:printf("+");break;
                    case 2:printf("-");break;
                    case 3:printf("*");break;
                    case 4:printf("/");break;
                 }

4人为控制计算结果,避免出现负数。

if(a<b)//判断两个数的大小,避免出现结果为负数 
                 {
                    int m=0;
                    m=a;
                    a=b;
                    b=m;
                 }

5. 导出到外部文件result.txt

FILE *fp=fopen("result.txt","w");
    fprintf(fp,"%d+%d=\n",a,b);

六. 总结

       一个高效率的软件离不开模块化的程序设计,本程序主要通过了如下几个模块实现功能:

        1.随机生成运算数a,b,随机生成运算符+、-、*、\。

        2.判断运算数是否可以为负数。

        3.判断结果是否为负数。

        4.文件导出。

七.PSP

PSP2.1

任务内容

计划共完成需要的时间(min)

实际完成需要的时间(min)

Planning

计划

10

15

·Estimate

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

50

70

Development

开发

80

98

· Analysis

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

10

10

· Design Spec

·  生成设计文档

15

20

· Design Review

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

5

6

 Coding Standard

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

2

3

· Design

具体设计

10

15

· Coding

具体编码

40

45

· Code Review

·  代码复审

6

9

·Test

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

10

10

Reporting

报告

10

14

· Test Report

·  测试报告

4

2

·Size Measurement

计算工作量

5

5

·Postmortem & Process Improvement Plan

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

5

6

posted @ 2019-09-15 20:34  jie130  阅读(238)  评论(1编辑  收藏  举报