• 第二次作业


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

    一 需求分析:

    • 运行界面用户按任意键开始运行,根据提示选择所要实现的计算(加、减、乘、除)
    • 选择相应计算后,程序对应算法随机产生两个数,用户给出答案
    • 用户给出答案,程序进行判断答案是否正确
    • 运行退出时,程序给出计算结果,统计答题正确与错误的个数

    二 设计:

    • rand()%100用来产生0~100以内的随机数,cystem("pause")用于暂停
    • 四个子函数对应相应的加减乘除运算,并判断结果对错
    • switch选择调用运算种类

    三 代码实现

    #include <stdio.h>
    #include <windows.h>
    int right=0,wrong=0;
    void add()
    {
     int a,b,c;
      a=rand()%100;
      b=rand()%100;
     printf("请回答:%d+%d=",a,b);
     scanf("%d",&c);
     if(a+b!=c){printf("回答错误
    ");wrong++;}
     else {printf("回答正确
    ");right++;} 
    }
    void minu()
    {
     int a,b,c;
      a=rand()%100;
      b=rand()%100;
     printf("请回答:%d-%d=",a,b);
     scanf("%d",&c);
     if(a-b!=c){printf("回答错误
    ");wrong++;}
     else {printf("回答正确
    ");right++;} 
    }
    void mul()
    {
     int a,b,c;
      a=rand()%100;
      b=rand()%100;
     printf("请回答:%d*%d=",a,b);
     scanf("%d",&c);
     if(a*b!=c){printf("回答错误
    ");wrong++;}
     else {printf("回答正确
    ");right++;} 
    }
    void di()
    {
     int a,b,c;
      a=rand()%100;
      b=rand()%100;
     printf("请回答:%d/%d=",a,b);
     scanf("%d",&c);
     if(a/b!=c){printf("回答错误
    ");wrong++;}
     else {printf("回答正确
    ");right++;} 
    }
    void main()
    {
       int choise,con=0;
       
       printf("
    
    		四则运算程序
    "); 
       system("pause");
       system("cls");
       while(1)
       {
        printf("
    
    		请选择:
    加(输入1)
    减(输入2)
    乘(输入3)
    除(输入4)
    "); 
        if(con==0)scanf("%d",&choise);
        switch(choise)
        {
         case 1:add();break;
         case 2:minu();break;
         case 3:mul();break;
         case 4:di();break;
     
        }
           printf("请问您想继续进行这个运算还是重新选择其他运算还是退出程序?
    继续(输入1),重新(输入2),退出(输入3)");
        scanf("%d",&con);
        if(con==1)con=1;
        if(con==2)con=0;
        if(con==3)break;
       }
       printf("您总做了%d个题,正确%d的道,错误%d道!
    ",right+wrong,right,wrong);
       system("pause");
       
    } 

    四 测试:(结果截图)

    五 事后分析和总结:

    PSP耗时统计

    PSP 耗时 百分比
    需求分析 10 13%
    设计 20 27%
    代码实现 35 47%
    测试 5 6.5%
    分析和总结 5 6.5%





    分析与总结:
    • 首先必须要了解用户需求--编写一个能自动生成小学四则运算题目的 “软件”
    • 思路要清晰,要有一个对程序设计走向的基本认识
    • 编写程序过程中,有不清楚的地方,善于查阅资料
    • 代码编写个人感觉很难(可能是由于自己编程基础太差),通过上网查阅、借鉴,才勉强完成。
  • 相关阅读:
    在linux下的使用复制命令cp,不让出现“overwrite”(文件覆盖)提示的方法。【转】
    Java 学习 day05
    Java 学习 day04
    Java 学习 day03
    Java 学习 day02
    Java 学习 day01
    学习TensorFlow,TensorBoard可视化网络结构和参数
    自编码器及相关变种算法简介
    自编码器(autoencoder)
    卷积神经网络
  • 原文地址:https://www.cnblogs.com/maorong93/p/4414721.html
Copyright © 2020-2023  润新知