我的第一个程序

忙活了半个下午做出来了,勉强可以见人,虽然还有些瑕疵,但是我也尽力了......

我做的是一个能对0--10之间的整数进行四则运算的,题目的数据是程序自动生成的,而且程能接收用户输入的整数答案,并判断对错程序结束时,统计出答对、答错的题目数量。

我做的是一个窗体:

拖了三个textbox控件,一个combobox控件,一个label和三个button控件,大部分的控件属性都没有改变,只有前两个textbox控件改了Enabled的属性改为false,使其不可输入数据,按下“说明”按钮有个小小的说明:

程序运行后的结果是这样的:

这个程序其实很简单,最主要的是“+”“-”“*”“/”,不同计算方法的切换,所以我用了switch语句,

string result = "";

switch (symbol)             {

case '+':

result = (n1 + n2).ToString();

break;

case '-':

result = (n1 - n2).ToString();

break;

case '*':

result = (n1 * n2).ToString();

break;

case '/':

result = n2 == 0 ? "除数不能为零。" : (n1 / n2).ToString();

break;

default:

break;

}

return result;

这部分是最难得,其次就是随机数的产生,

private void RandomNum()
        {
            Random ran = new Random();
            double n1, n2;
            n1 = ran.Next(0, 10);
            n2 = ran.Next(0, 10);
            textBox1.Text = n1.ToString();
            textBox2.Text = n2.ToString();
            textBox3.Text="";
            Count++;
         }

最后就是窗体之间的转换和最后计算结果的现实,这个比较简单啦!

private void button3_Click(object sender, EventArgs e)
        {
            new Form3().Show();
        }

(窗体转换)

private void Form2_Load(object sender, EventArgs e)
        {
            textBox1.Text = Form1.Count.ToString();
            textBox2.Text = Form1.right.ToString();
            textBox3.Text = ((Form1.right / (double)(Form1.Count)) * 100).ToString() + "%";
        }

(最后在form3现实结果)

这个就是我的全部设计,至于时间,因为是断断续续的没法精确,但是我这点儿水平。估计有整整3个多小时吧!还是保守估计的。

嗯,最后是测试部分了。说实话,这个我不太会,后面我会继续努力的。

至于需求分析方面,我觉得比较适合小学生来练习计算能力,所以我觉得可以的话可以多一个保存结果,就是正确率那个。便于学生来看自己的进步或者适当的再进行练习,而且还可以美化一些,因为小孩子可能更喜欢漂亮些的东西......

还有最后一个上传代码的,我只能说:呵呵哒........
                                                      
                                                                                                                                                                                                       (2015.10.3 晚)
                                                                                                                                                                               
 
 
 
 

四则运算(window窗体程序)的更多相关文章

  1. window窗体程序意外崩溃,EventType clr20r3错误的解决方法

    EventType clr20r3, P1 ggreadcard.exe, P2 1.0.0.0, P3 51d3d283, P4 zljy.common, P5 1.0.0.0, P6 4fc6c2 ...

  2. 写一个去除AI2XAML注释及多余数字位数的WPF窗体程序

    原文:写一个去除AI2XAML注释及多余数字位数的WPF窗体程序 使用正则表达式去除多余注释及冗余数字位,关键代码:            string pattern = @"/b(/d+ ...

  3. wpf的UserControl用户控件怎么添加到Window窗体中

    转载自 http://www.cnblogs.com/shuang121/archive/2013/01/09/2853591.html 我们来新建一个用户控件UserControl1.xaml &l ...

  4. 作业二:个人编程项目——编写一个能自动生成小学四则运算题目的程序

    1. 编写一个能自动生成小学四则运算题目的程序.(10分)   基本要求: 除了整数以外,还能支持真分数的四则运算. 对实现的功能进行描述,并且对实现结果要求截图.   本题发一篇随笔,内容包括: 题 ...

  5. 写window应用程序日志System.Diagnostics.EventLog.WriteEntry

    System.Diagnostics.EventLog.WriteEntry( MySource , Writing to event log. ); 可以写window应用程序日志 查看的地方:右击 ...

  6. 转:vs发布window应用程序时出错:未能签名 ...\setup.exe

      在vs发布window应用程序过程中,提示“SignTool 报告了一个错误‘未能签名 ...\setup.exe.SignTool 错误: ISignCode::Sign 返回的错误: 0x80 ...

  7. 如何给windows窗体程序打包成一个安装包

    http://blog.csdn.net/xyy410874116/article/details/6341787 给windows窗体程序打包成一个安装包:具体操作在:http://hi.baidu ...

  8. 学习java随笔第十一篇:java窗体程序

    要开java的窗体程序,就要下载开发窗体的工具. 这里我用的是的myeclipse,可以直接在网上下载安装即可. 我用的是10.0版本的,如果需要汉化的话,可以看一下这篇文章:myeclipse.10 ...

  9. VS2010 win32项目windows窗体程序 向导生成代码解析

    目录: 1.Win32项目的windows窗体程序的向导生成了如下代码 2.手工生成代码如下 3.当消息队列中没有消息需要处理,我们可以利用这段时间处理我们自己的任务 1.Win32项目的window ...

随机推荐

  1. IceStorm示例运行步骤

    又一次忘了,记下: 1.启动IceStorm服务,输入:icebox --Ice.Config=config.icebox 启动IceStorm服务.2.消息接收:开启另一个命令行窗口,Subscri ...

  2. 可变多隐层神经网络的python实现

    说明:这是我对网上代码的改写版本,目的是使它跟前一篇提到的使用方法尽量一致,用起来更直观些. 此神经网络有两个特点: 1.灵活性 非常灵活,隐藏层的数目是可以设置的,隐藏层的激活函数也是可以设置的 2 ...

  3. 面试题-python基础

    一.Python基础 1.什么是python?使用python有什么好处? python是一种编程语言,它有对象.模块.线程.异常处理和自动内存管理.它简洁,简单.方便.容易扩展.有许多自带的数据结果 ...

  4. P2167 [SDOI2009]Bill的挑战

    sb状压dp. 设f[i][j]表示字符串前i位和集合为j的串匹配的方案数. 枚举哪个字母直接转移就好了. (话说为啥这种水题都有紫色难度 #include<bits/stdc++.h> ...

  5. 牛客OI周赛3-提高组-B-1408[dp]

    题意 给你长度为 \(n\) 的两个排列 \(A,B\) 组成的序列,求最少的交换相邻数字的次数使得 \(A,B\) 分别有序. \(n\leq 2000\) . 分析 如果只有一个排列时最少交换次数 ...

  6. PLSQL Developer 客户端没有TNS监听,无法连接数据库

    在Windows Server 2008 中安装了 64位的Oracle,好不容易将监听做好,在使用客户端 PLSQL Developer 的时候发现竟然没有TNS监听. 问题如下: 如上图所示,打开 ...

  7. 【ORACLE】ORACLE RAC设置控制文件多路

    [oracle@rac01 ~]$ srvctl stop database -d proc -o immediate [oracle@rac01 ~]$ sqlplus / as sysdba SQ ...

  8. CSS快速入门-代码目录

    我们写python代码或者其他代码的时候,发现文件会越来越多,这时候你就觉得有必要把代码文件进行整理了. 对代码整理的整理主要思路: 1.按功能(比如:可执行程序文件.数据库文件.视图文件) 2.按类 ...

  9. 论文阅读 | Formalizing Visualization Design Knowledge as Constraints: Actionable and Extensible Models in Draco

    1. Introduction 程序员编写的可视化图表与专家眼中的设计标准总存在差距.我们无法每次都向可视化专家咨询设计上的意见,所以我们需求将设计标准,研究成果应用于自动化设计工具的正式框架,这些工 ...

  10. [Processing]点到线段的最小距离

    PVector p1,p2,n; float d = 0; void setup() { size(600,600); p1 = new PVector(150,30);//线段第一个端点 p2 = ...