个人项目1:一个能生成小学二年级四则运算题目的“软件”

Posted xuzhengdong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了个人项目1:一个能生成小学二年级四则运算题目的“软件”相关的知识,希望对你有一定的参考价值。

做这个程序,用了差不多半个小时。从开始的思路到语句的实践,之间也出现了一些语法的错误,最后也得到了修正。由于学习的语言种类有限(c#刚刚开始学,大一时学习过c语言),在这里选择用C语言编写这个程序,环境是vs2010。

编写软件的大纲及思路:

1.需要生成随机自然数,我选择了rand函数

2.需要有加减乘除符号且随机分布,我定义了一个随机数c,当随机数取0的时就是+,取1的时就是-,取2的时就是*,取3的时就是/

3.减法算出来的数不能为负,我采用了if函数先判断大小,如果顺序不合适就对两个随机数进行交换

4.用for循环语句可以轻松的生成30道题目

代码如下:

#include<stdio.h>
#include<Windows.h>
#include<time.h>
void main()
{
    int a, b, c, d, i;
    srand(unsigned( time(NULL)));
    for(i = 0; i < 30; i++)
    {
        a = rand() % 100;
        b = rand() % 100;
        c = rand() % 4;
        switch (c)
        {
        case 0:printf("%d + %d =
",a,b);
            break;
        case 1:if (a < b)
               {
                   d = a;
                   a = b;
                   b = d;
               }
             printf("%d - %d =
", a, b);
             break;
        case 2:printf("%d * %d =
",a,b);
            break;
        case 3:
            while (b == 0)
            {
                b = rand() % 100;
            }
            printf("%d / %d =
", a, b);
            break;
        }
    }
    system("pause");
}

运行结果如下:

技术分享图片

和同学的程序相比,都使用了随机函数rand获取随机数,利用for函数控制生成题型的数量。不同之处在于“+ - * /”符号的生成方式,我是定义了一个随机变量c,它的值域是0-3,通过c生成的数来决定加减乘除的符号,而同学的是先定义一个包含加减乘除的字符串,然后利用srand在里面获取随机运算符。总的来说,结果都是一样的,我也学习到另一种编程方法,收获颇多。

 

以上是关于个人项目1:一个能生成小学二年级四则运算题目的“软件”的主要内容,如果未能解决你的问题,请参考以下文章

个人作业1——四则运算题目生成程序

个人作业1——四则运算题目生成程序(基于安卓)

个人作业1——四则运算题目生成程序(基于控制台)

小学二年级四则运算题

小学四则运算

个人作业1——四则运算题目生成程序(基于控制台)