zoukankan      html  css  js  c++  java
  • 第二次作业《四则运算》

     题目:

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

    一:基本要求

        1:题型选择界面设计,选择加、减、乘、除运算。

        2:系统随机产生一百以内的两个数进行运算。

        3:练习时,用户从键盘输入结果,正确和错误均有提示,按6,显示总题数和正确数。

     二:需求分析

         编写小学四则运算测试系统,要求完成两位数的加,减,乘,除四则运算。能根据用户的输入来选择运算种类,用户输入答案后可以判断正误,做完一次测试后,用户可以决定是否继续进行下一次运算。

    三:设计

        1:定义变量i,j,a,b,m其中i表示答对的题数,j表示答错的题数,a,b表示随机产生的数,m接收从键盘输入的运算结果。

        2:分别定义加,减,乘,除子函数,出错和正确都有提示。

        3:主函数用switch来实现用户的输入来选择运算种类,并输出答题的数目和正确的题数。

    四:代码实现

    #include<stdio.h>
    #include<stdlib.h>
    #include<time.h>
    int i=0,j=0;
    
    void jia()
    {
        int a,b,m;
    	srand(time(NULL));
    	a=1+rand()%100;
        b=1+rand()%100;
        printf("%d
    ",a);
        printf("%d
    ",b);
        printf("a+b=?
    ");
    	printf("请输入运算结果
    ");
        scanf("%d",&m);
    	if(m==a+b)
    	{
    		printf("恭喜你答对了
    ");
    		i++;
    	}
    	else
    	{
            printf("你答案有错误
    ");
    		j++;
    	}
    	
    }
    
    void jian()
    {
        int a,b,m;
    	srand(time(NULL));
    	a=1+rand()%100;
        b=1+rand()%100;
    	if(a<b)
    	{
    		int t=0;
    		t=a;a=b;b=t;
    	}
        printf("%d
    ",a);
        printf("%d
    ",b);
        printf("a-b=?
    ");
    	printf("请输入运算结果
    ");
        scanf("%d",&m);
    	if(m==a-b)
    	{
    		printf("恭喜你答对了
    ");
    		i++;
    	}
    	else
    	{
            printf("你答案有错误
    ");
    		j++;
    	}
    	
    }
    void cheng()
    {
        int a,b,m;
    	srand(time(NULL));
    	a=1+rand()%20;
        b=1+rand()%20;
        printf("%d
    ",a);
        printf("%d
    ",b);
        printf("a*b=?
    ");
    	printf("请输入运算结果
    ");
        scanf("%d",&m);
    	if(m==a*b)
    	{
    		printf("恭喜你答对了
    ");
    		i++;
    	}
    	else
    	{
            printf("你答案有错误
    ");
            j++;
    	}
    	
    }
    void chu()
    {
        int a,b,m;
    	srand(time(NULL));
        a=1+rand()%100;
        b=1+rand()%100;
    	if(b==0)
    	{
    		b=1+rand()%100;
    	}
    	if(a<b)
    	{
           	int t=0;
    		t=a;a=b;b=t;
    	}
        while(a%b!=0)
    	{
    		a=1+rand()%100;
            b=1+rand()%100;
    	}
        printf("%d
    ",a);
        printf("%d
    ",b);
        printf("a/b=?
    ");
    	printf("请输入运算结果
    ");
        scanf("%d",&m);
    	if(m==a/b)
    	{
    		printf("恭喜你答对了
    ");
    		i++;
    	}
    	else
    	{
            printf("你答案有错误
    ");
            j++;
    	}
    	
    }
    
    int main() { int m,n=0; while(1) { printf("1.加法运算 "); printf("2.减法运算 "); printf("3.乘法运算 "); printf("4.除法运算 "); printf("请选择"); scanf("%d", &m); switch(m) { case 1:jia();break; case 2:jian();break; case 3:cheng();break; case 4:chu();break; } printf("5.请重新选择 "); printf("6.结束 "); scanf("%d", &n); if(n==6) break; } printf("你回答题的总数%d和正确的个数%d ",i+j,i); return 0; }

    五:系统测试

       (1) 加法运算界面,包括做的总题数和正确数

       (2)减法运算界面

     (3)乘法运算界面

     (4)除法运算界面

    六:PSP耗时统计

    七:事后分析和总结

        首先看到题目,具体该怎么写,我几乎不明白。通过老师的讲解以及看书上的第二章《构建之法》:个人技术和流程,才了解题目。接着代码的实现通过查阅资料和老师,同学的交流才完成了本次作业。通过本次实验大概理解了设计是指说明软件的实现思路,理论上要求照此可以编码。需求分析是指产生软件规格说明书,需要确定用户对软件的需求,不涉及具体的实现方法。代码的实现就是编写出代码,并能正确的运行。

  • 相关阅读:
    如何正确得到某个元素的位置
    jQuery Tags Input Plugin(添加/删除标签插件)
    [转载]舒迅:产品经理必读的九步法
    不间断循环滚动代码
    jquery validate api
    jquery文件上传控件 Uploadify
    关于CSS权重问题
    css中fontfamily的中文字体
    expression解决IE6下固定定位的兼容
    模拟下拉select
  • 原文地址:https://www.cnblogs.com/122zy/p/4401027.html
Copyright © 2011-2022 走看看