简易四则运算器(winform版)

今天看老师做了一个四则运算器,自己也跟着做了一遍,我又加上了非空验证和输入合法性校验。

 

 1 using System;
2 using System.Collections.Generic;
3 using System.ComponentModel;
4 using System.Data;
5 using System.Drawing;
6 using System.Linq;
7 using System.Text;
8 using System.Windows.Forms;
9 using System.Text.RegularExpressions;
10
11 namespace 四则运算器
12 {
13 public partial class Form1 : Form
14 {
15 public Form1()
16 {
17 InitializeComponent();
18 }
19
20 private void btnCompute_Click(object sender, EventArgs e)
21 {
22 string frt = txtFrt.Text;
23 string snd = txtSnd.Text;
24 if (frt == null || frt.Trim().Length <= 0 || snd == null || snd.Trim().Length <= 0)
25 {
26 MessageBox.Show("请输入数字!");
27 return;
28 }
29 Regex regex = new Regex(@"^\-?\d*$");
30 if (!regex.IsMatch(frt))
31 {
32 MessageBox.Show("输入值必须为数字");
33 return;
34 }
35 if (!regex.IsMatch(snd))
36 {
37 MessageBox.Show("输入值必须为数字");
38 return;
39 }
40 int i1 = Convert.ToInt32(frt);
41 int i2 = Convert.ToInt32(snd);
42 int result = 0;
43 switch (cbOpr.SelectedIndex)
44 {
45 case 0://+
46 result = i1 + i2;
47 break;
48 case 1://-
49 result = i1 - i2;
50 break;
51 case 2://*
52 result = i1 * i2;
53 break;
54 case 3:// /
55 if (i2 == 0)
56 {
57 MessageBox.Show("除数不能为零!");
58 return;
59 }
60 result = i1 / i2;
61 break;
62 default:
63 throw new Exception("未知的运算符");
64 }
65 txtResult.Text = Convert.ToString(result);
66 }
67 }
68 }

 

界面:

点击计算后,如果两个文本框中的值都是空值,或者在文本框中输入非数字如:

 

 如果输入非法值,1任一一个文本框中的值为空2仅输入空格,那么程序出提示错误如下:

 3第一个文本框为非数字4第二个文本框为非数字5两个文本框都为非数字,则提示如下错误:

 6如果除数为0,则提示如下错误: 

 如果用户输入的都是合法数字,则运算ok,如下:

 

 

posted @ 2011-12-16 08:32  keepLearning...  阅读(398)  评论(0编辑  收藏  举报