zoukankan      html  css  js  c++  java
  • 软件工程第二次作业

    题目: 请编写一个能自动生成小学四则运算题目的 “软件”。 让程序能接受用户输入答案,并判定对错。 最后给出总共 对/错 的数量。

    - 需求分析

    针对小学生练习的需要,设计一个自测系统,要求该系统能随机产生两个数和运算符,当输入答案是,能自动判断对错,并给出提示,退出系统时,统计对、错的题数。

    - 设计

    用C语言实现小学生自测系统的加、减、乘、除四则运算

    - 代码实现

     1 #include <stdio.h>
     2 #include <time.h>
     3 #include <stdlib.h>
     4 void main(){
     5  int a,b,c,d;
     6  int right=0,wrong=0;
     7  while(1){
     8   srand(time(NULL));    
     9   d=a=rand()%100;    
    10   b=(rand()%a+a)%100;
    11   if(a%4==1&&a<b)
    12    c=a,a=b,b=c;
    13   if(b==0&&a%4==3)b=rand()%10+1;
    14   if(a%4==3&&a%b!=0)
    15   {
    16    srand(time(0));     
    17    a=b*(rand()%a);
    18   }  
    19   switch(d%4)
    20   {
    21   case 0:printf("%d + %d = ",a,b);
    22    break;
    23   case 1:printf("%d - %d = ",a,b);
    24    break;
    25   case 2:printf("%d × %d = ",a,b);
    26    break;
    27   case 3:printf("%d ÷ %d = ",a,b);
    28    break;
    29   }  
    30   scanf("%d",&c);
    31   switch(d%4)
    32   {
    33   case 0:
    34    if(c==a+b)
    35    {
    36     printf("回答正确
    ");
    37     right++;
    38    }
    39    else
    40    {
    41     printf("回答错误
    ");
    42     wrong++;
    43    }
    44    break;
    45   case 1:
    46    if(c==a-b)
    47    {
    48     printf("回答正确
    ");
    49     right++;
    50    }
    51    else
    52    {
    53     printf("回答错误
    ");
    54     wrong++;
    55    }
    56    break;
    57   case 2:
    58    if(c==a*b)
    59    {
    60     printf("回答正确
    ");
    61     right++;
    62    }
    63    else
    64    {
    65     printf("回答错误
    ");
    66     wrong++;
    67    }
    68    break;
    69   case 3:
    70    if(c==a/b)
    71    {
    72     printf("回答正确
    ");
    73     right++;
    74    }
    75    else 
    76    {
    77     printf("回答错误
    ");
    78     wrong++;
    79    }
    80    break;
    81   }
    82   printf("按任意键继续,0退出!
    ");
    83   fflush(stdin);
    84   if(getchar()=='0')
    85    break; 
    86  }
    87  printf("你答对了%d道题,答错%d道题
    ",right,wrong);
    88 }

    - 测试

           步 骤           

          耗   时                百分比(%)   
        需求分析

               5   

    26.3
         设计            4 21
        代码实现            8 42.1
        测试            1 5.3
      分析和总结            1 5.3

    事后分析和总结

    我觉得编写程序是很大的问题,主要是对编程语言不熟悉,也不知道该如何去编写。

  • 相关阅读:
    正则表达式
    UVALive
    Python科学计算基础篇
    IntelliJ IDEA 2017.3激活与汉化
    hive order by,sort by, distribute by, cluster by作用以及用法
    Hive调优
    Hive 索引
    hive视图
    Hive 分区 分桶使用
    linux内核优化,内核参数详解
  • 原文地址:https://www.cnblogs.com/lizhuanyan/p/4415426.html
Copyright © 2011-2022 走看看