能自动生成小学四则运算题目的程序

主要功能:随机产生数字和符号,形成四则运算式。

设计思想:这个程序很简单,主要就是产生随机数字和符号,然后考虑除数不能为0和不能整除的操作,我这里为了方便将这两种情况的解决办法写成将符号变为加号或减号。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace 四则运算作业
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            Random shu = new Random();//用于产生计算的数
            Random fuhao = new Random();//用于产生运算符

            int suijishu1 = shu.Next(1, 101);//取0-100的随机数
            label1.Text = suijishu1.ToString();//随机产生第一个数

            int yunsuanfu1 = fuhao.Next(1, 5);//取1-4的随机数用来匹配运算符
            string jsysf1 = "";//用于接受+-*/
            switch (yunsuanfu1)//判断运算符
            {
                case 1:
                    jsysf1 = "+";
                    break;
                case 2:
                    jsysf1 = "-";
                    break;
                case 3:
                    jsysf1 = "*";
                    break;
                case 4:
                    jsysf1 = "/";
                    break;
            }

            label2.Text = jsysf1;//第一个符号

            int suijishu2 = shu.Next(1, 101);//取0-100的随机数
            label3.Text = suijishu2.ToString();//随机产生第二个数

            if (jsysf1 == "/" && suijishu2 == 0)//除数为零的操作
            {
                jsysf1 = "+";
            }
            if (jsysf1 == "/" && suijishu1 % suijishu2 != 0)//不能整除的操作
            {
                jsysf1 = "-";
            }

            int yunsuanfu2 = fuhao.Next(1, 5);//取1-4的随机数用来匹配运算符
            string jsysf2 = "";//用于接受+-*/
            switch (yunsuanfu2)//判断运算符
            {
                case 1:
                    jsysf2 = "+";
                    break;
                case 2:
                    jsysf2 = "-";
                    break;
                case 3:
                    jsysf2 = "*";
                    break;
                case 4:
                    jsysf2 = "/";
                    break;
            }

            label4.Text = jsysf2;//第二个符号

            int suijishu3 = shu.Next(1, 101);//取0-100的随机数
            label5.Text = suijishu3.ToString();//随机产生第三个数

            if (jsysf2 == "/" && suijishu3 == 0)//除数为零的操作
            {
                jsysf2 = "+";
            }
        }


    }
}

posted on 2016-03-15 18:44  李成帅  阅读(356)  评论(0编辑  收藏  举报

导航