我的第一个程序

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

我做的是一个能对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. XCode iOS之应用程序标题本地化

    1.XCode项目中创建一个.strings 扩展名的文件:打开File > New > File,选择Resource中Strings Fils,如图:点击下一步,为文件命名为(强烈建议 ...

  2. laravel 5.5 《电商实战 》安装应用

    最近开始接触电商业务.公司打算采用lavarel做后端的开发,出于学习成本和时间的考虑.自己找到了一个不错的收费教程.这段时间会同步更新,分享自己的学习过程. 自己的开发环境,mac+nginx+my ...

  3. 一个简单python爬虫的实现——爬取电影信息

    最近在学习网络爬虫,完成了一个比较简单的python网络爬虫.首先为什么要用爬虫爬取信息呢,当然是因为要比人去收集更高效. 网络爬虫,可以理解为自动帮你在网络上收集数据的机器人. 网络爬虫简单可以大致 ...

  4. git更新远程仓库报错

    hint: Updates were rejected because the tip of your current branch is behind hint: its remote counte ...

  5. jQuery学习- 表单事件

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  6. [BZOJ3451]normal 点分治,NTT

    [BZOJ3451]normal 点分治,NTT 好久没更博了,咕咕咕. BZOJ3451权限题,上darkbzoj交吧. 一句话题意,求随机点分治的期望复杂度. 考虑计算每个点对的贡献:如果一个点在 ...

  7. USACO Section1.1

    本系列博客主要学习和记录USACO的相关代码和总结,附上我的github地址. 什么是USACO USACO全称是The USA Computing Olympiad,主要目的是从美国高中生中选出代码 ...

  8. Execute Process Task

    Execute Process Task 用于在Control Flow中执行应用程序,常用于对加密的数据进行解压. 1,RequireFullFileName 属性:是否需要完整的文件路径,如果在F ...

  9. MySQL数据库常用操作语法

    1. 数据库初始化配置 1.1. 创建数据库 create database apps character set utf8 collate utf8_bin;创建数据库”app“,指定编码为utf8 ...

  10. C#_接口与抽象类

    .Net提供了接口,这个不同于Class或者Struct的类型定义.接口有些情况,看似和抽象类一样,因此有些人认为在.Net可以完全用接口来替换抽象类.其实不然,接口和抽象类各有长处和缺陷,因此往往在 ...