1、需求分析

编写一个能对0--10之间随机生成的整数进行四则运算的“软件” 程序能接收用户输入的整数答案,并判断对错 程序结束时,统计出答对、答错的题目数量。

2、具体设计思路

首先想到,既然要用四种方法,就用switch case 语句来根据用户的选择进行其中的一种运算。算法直接嵌套在case语句里,这样既简单又方便。
要求进行运算的两个数是随机的,用Random产生两个0~10的随机数。
共需要两个窗体,一个进行四则运算,一个进行统计。
定义一个count来进行存储答题数目,定义一个right来进行存储答对数目。

3、编写过程截图

4.具体代码实现

Form1.cs:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;namespace 四则运算
{public partial class Form1 : Form{public Form1(){InitializeComponent();}public static int Count = 0;public static int right = 0;private void RDN(){Random rd = new Random();int n1, n2;n1 = rd.Next(0, 11);n2 = rd.Next(0, 11);textBox1.Text = n1.ToString();textBox2.Text = n2.ToString();textBox3.Text = "";}private void button1_Click(object sender, EventArgs e){label1.Text = button1.Text;RDN();}private void button2_Click(object sender, EventArgs e){label1.Text = button2.Text;RDN();}private void button3_Click(object sender, EventArgs e){label1.Text = button3.Text;RDN();}private void button4_Click(object sender, EventArgs e){label1.Text = button4.Text;RDN();}private void button5_Click(object sender, EventArgs e){Form2 frm2 = new Form2();frm2.ShowDialog();}private void textBox3_KeyDown(object sender, KeyEventArgs e){int result = 0;string s = label1.Text;switch (s){case "+":result = int.Parse(textBox1.Text) + int.Parse(textBox2.Text);break;case "-":result = int.Parse(textBox1.Text) - int.Parse(textBox2.Text);break;case "×":result = int.Parse(textBox1.Text) * int.Parse(textBox2.Text);break;case "÷":if (textBox2.Text=="0"){MessageBox.Show("分母为0,不计入答题总数,请回车继续答题!");}else{result = int.Parse(textBox1.Text) / int.Parse(textBox2.Text);}break;}if (e.KeyCode == Keys.Enter){if (textBox3.Text == result.ToString()){right++;Count++;MessageBox.Show("回答正确!");}else{if (textBox2.Text=="0"){RDN();}else {MessageBox.Show("答题错误!");RDN();Count++;}}RDN();}}}
}

Form2.cs:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;namespace 四则运算
{public partial class Form2 : Form{public Form2(){InitializeComponent();}private void Form2_Load(object sender, EventArgs e){textBox1.Text = Form1.Count.ToString();textBox2.Text = Form1.right.ToString();textBox3.Text = (Form1.Count - Form1.right).ToString();}}
}

5、运行截图

6、总结

通过这次的作业,我发现,“分析”很重要啊。我们要对用户的需求来进行分析,列出具体的框架。
当我们进行测试的时候,如果达不到效果,我们还要反过来进行分析,到底是哪里出了错。
经过一系列的分析,测试,来达到我们最终的效果!

转载于:https://www.cnblogs.com/thinking-star/p/4852566.html

窗体应用程序:四则运算相关推荐

  1. PyQt4 Python GUI窗体应用程序

    目录 目录 前言 软件环境 PyQT简介 Setup PyCharm Setup SIP Setup PyQt4 测试PyQt是否安装成功 常见错误 最后 前言 还是一句老话,公司要什么我就做什么.这 ...

  2. VS中使用C#开发一个登录窗体应用程序

    场景 使用VS2012开发第一个Windows窗体程序. 实现 打开vs-文件-新建-项目 选择Visual C#-Windows 窗体应用程序,配置项目名字与存储路径. 新建完之后如下,点击工具箱, ...

  3. Win32窗体应用程序如何添加资源文件?

    Win32窗体应用程序如何添加资源文件? 上一篇文章介绍了:如何创建一个最简单的Windows窗体应用程序. 按照上一篇文章的介绍,我们的HelloApp项目对应如下的窗体应用程序: 这一篇文章中,我 ...

  4. 随机数演示(窗体应用程序)

    新建窗体应用程序(如下),新建控件label1,label2,label3,label4,label5,textBOX1,textBOX2,button1,button2 label1的Text属性改 ...

  5. 关于windows窗体应用程序 1117

    关于windows窗体应用程序 1117 无处不在的窗体 如何新建窗体项目 解决方案资源管理器 入口文件的入口方法 这里可控制要启动的窗体 两种视图 partial关键字 代码拆分 认识窗体类 继承 ...

  6. 实现备份轮换方案的备份实用程序(C#中的开源Windows窗体应用程序)

    目录 介绍 备份架构 演示程序 程序源代码 下载源代码 - 83 KB 介绍 CopyTree是一个实现备份轮换方案的备份实用程序.它是一个用C#编写的开源Windows窗体应用程序.该实用程序旨在将 ...

  7. c#窗体应用程序:100以内的素数,每8个数为一行

    c#窗体应用程序:100以内的素数,每8个数为一行 1.窗体部分:放入一个label控件.(下面代码label的命名为label1) 2.代码部分: /// <summary>/// 窗体 ...

  8. C#窗体应用程序之设置窗体名称和程序图标

    1. 设置窗体名称和生成的应用程序名称 1.1 设置窗体名称 窗体也是属于窗体应用程序中的一个控件.选中窗体,然后我们可以到右侧对应的窗体控件属性窗口,Text属性栏输入自己想要的名称即可,如下图: ...

  9. Winfrom窗体应用程序图标的改变

    在自己的winform窗体应用程序中,改变默认图标的方法 1:程序运行时,在电脑最下面的"任务栏"的图标 改变方法:右键 "主窗体" ---> " ...

  10. C#创建Windows窗体应用程序实例6【ASCII码查询程序】

     都实例6了?你还不会创建项目?不会操作步骤?不会写代码?请进入下方链接学习吧! C#创建Windows窗体应用程序实例1https://blog.csdn.net/qq_45037155/artic ...

最新文章

  1. 快速搭建一个网关服务,动态路由、鉴权看完就会(含流程图)
  2. mybaits七:select查询返回list集合
  3. java访问远程共享文件
  4. Linux中常见的环境变量笔记
  5. UVA10140 Prime Distance
  6. c99数组稀疏初始化
  7. mobiscroll 插件札记(一)
  8. no input file specified 三种解决方法
  9. EasyUI的Vue版本
  10. 2022021第二届青少年计算机知识竞赛
  11. 母牛2年生小牛 5年后并死去的算法
  12. airtest--自动刷喵币
  13. ORA-1555,oracle读一致性
  14. 大数据概述:传统数据与大数据的区别
  15. 调度器 XXL(X)和 Dolphin(D)的对比
  16. 博士算是人才!不是(著名学者苗体君大师著)
  17. 可以读取html文件,javascript能读取本地文件吗?
  18. 红帽Linux系统操作命令大全【linux查询命令篇】---转自微信公众号网络技术联盟站
  19. php前端轮播图代码,swiper轮播图代码实例
  20. 一种NB-IOT微功耗无线数据采集传输终端

热门文章

  1. 视频换脸AISWAP技术示例
  2. java valueof null,String.valueOf(null) 遇到的坑
  3. 深度优先遍历访问的边集合_数据结构与算法: 三十张图弄懂「图的两种遍历方式」...
  4. REMIX 本地环境搭建指南
  5. 勒索病毒运营团伙的运作流程
  6. Go语言中命令行参数的实现
  7. 解决EMF里引用对象的刷新问题
  8. json:JSONObject包的具体使用(JSONObject-lib包是一个beans,collections,maps,java arrays和xml和JSON互相转换的包)...
  9. 以某种结构遍历添加的基础类
  10. java interface_Java中的接口(interface)