• 第二次作业


    一、题目

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

    二、分析

       1、此软件可选择所需的四则运算符号,即加、减、乘、除。

       2、对于用户选择的运算符号可自动生成两个随机数。

       3、通过用户手动输入运算结果,该软件可判断用户答案的正确性。

       4、对于用户答案的正确与否可进行统计。

    三、代码

    #include<stdio.h>
    #include<math.h>
    #include<windows.h>
    int right=0;
    int wrong=0;
    void plus()
    {
     int x,y,z;
     x=rand()%100;
     y=rand()%100;
     printf("请回答:
    		 %d + %d = ",x,y);
     scanf("%d",&z);
     if(x+y==z)
     {
      printf("回答正确!
    ");
      right++;
     }
     else
     {
      printf("回答错误!
    ");
      wrong++;
     }
    }
    void subtract()
    {
     int x,y,z;
     x=rand()%100;
     y=rand()%100;
     printf("请回答:
    		 %d - %d = ",x,y);
     scanf("%d",&z);
     if(x-y==z)
     {
      printf("回答正确!
    ");
      right++;
     }
     else
     {
      printf("回答错误!
    ");
      wrong++;
     }
    }
    void multiply()
    {
     int x,y,z;
     x=rand()%100;
     y=rand()%100;
     printf("请回答:
    		 %d * %d = ",x,y);
     scanf("%d",&z);
     if(x*y==z)
     {
      printf("回答正确!
    ");
      right++;
     }
     else
     {
      printf("回答错误!
    ");
      wrong++;
     }
    }
    void divide()
    {
     int x,y,z;
     x=rand()%100;
     y=rand()%100;
     printf("请回答:
    		 %d / %d = ",x,y);
     scanf("%d",&z);
     if(x/y==z)
     {
      printf("回答正确!
    ");
      right++;
     }
     else
     {
      printf("回答错误!
    " );
      wrong++;
     }
    }
    void main()
    {
     int choise;
     int p=0;
     printf("
    			欢迎进入小学四则运算
    
    ");
     while(1)
     {
      printf("请选择:
    ");
      printf("			  加法运算(请输入1)
    ");
      printf("			  减法运算(请输入2)
    ");
      printf("			  乘法运算(请输入3)
    ");
      printf("			  除法运算(请输入4)
    ");
      printf("			  退出运算(请输入5)
    ");
      if(p==0)
       scanf("%d",&choise);
      switch(choise)
      {
      case 1:
       plus();break; 
      case 2:
       subtract();break;   
      case 3:
       multiply(); break;  
      case 4:
       divide(); break;  
      case 5:
       return;
      }
    
      printf("
    			继续该运算?(请输入1)
    ");
      printf("
    			重新选择?(请输入2)
    ");
      printf("
    			退出运算?(请输入3)
    ");
      scanf("%d",&p);
      if(p==1)
       p=1;
      else if(p==2)
       p=0;
      else if(p==3)
       break;
      else
       printf("输入指令有误!请重新输入!
    ");
     }
     printf("做对 %d 道
    做错 %d 道
    ",right,wrong);
    }
    

    四、程序效果截图

      

    五、PSP耗时统计

    PSP

    Personal Software

    Process Stages

    Time(%)

    Senior

    Student

    Time(%)

    SDE

    Plannig 计划 10 8
    Analysis 需求分析 10 8
    Design Spec 生成设计文档 3 6
    Design Review 设计复审 4 6
    Coding Standard 代码规范 2

    2

    六、总结

          通过这次作业,让我尝试到了软件开发是一件挺辛苦的事。该软件能够完成简单的小学四则运算,我觉得很不错。例如,可根据自己的需要选择所需的四则运算符号(加、减、乘、除),根据用户选择的运算符号,系统可自动生成两个随机数,而且可对用户输入的运算结果进行判断对错并统计对错数量等。当然,它同时也存在着一些不足之处。比如说,产生的两个随机数均为整数,但在计算除法时,结果可能会出现小数,而软件会将计算所得结果自动化为整数,导致结果错误,这是还需改进的地方。所有我会继续努力,争取将它更加完善。

  • 相关阅读:
    在VS2010 C++中调试DLL工程的方法
    Dos命令关机、重启
    js中实现缓动效果
    win32程序窗口的创建
    win32子窗口和控件
    c++DLL添加导出函数
    Win32创建窗口的过程
    贝塞尔曲线的数学原理
    一些基本的GDI操作BITMAP的方法
    Windows快捷键
  • 原文地址:https://www.cnblogs.com/hgl1023/p/4415651.html
Copyright © 2020-2023  润新知