web加减乘除法c#_C#实现简单加减乘除计算器

第一次学习C#,做了个简单的加减乘除计算器,只能实现两个因数的运算。

主要是练习下C#编程,和以前用过的VB差不多。与VB6不同的是,C#代码区分大小写。

Windows窗口程序主要也是由一些控件组成,响应响应的事件(event),实现具体的功能。

1.效果图如下所示

2.代码如下所示

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Text;

using System.Windows.Forms;

namespace WindowsApplication1

{

public partial class Main : Form

{

public Main()

{

InitializeComponent();

}

private void Main_Load(object sender, EventArgs e)

{

}

private void txtInshu1_TextChanged(object sender, EventArgs e)

{

}

private void txtInshu1_KeyPress(object sender, KeyPressEventArgs e)

{

OnlyEnterNumber(sender, e);

}

/// 只能输入数字(含负号小数点)

///

///

///

public static void OnlyEnterNumber(object sender, KeyPressEventArgs e)

{

if ((e.KeyChar < 48 || e.KeyChar > 57) && e.KeyChar != 8 && e.KeyChar != 13 && e.KeyChar != 45 && e.KeyChar != 46)

{

e.Handled = true;

}

// 输入为负号时,只能输入一次且只能输入一次

if (e.KeyChar == 45 && (((TextBox)sender).SelectionStart != 0 || ((TextBox)sender).Text.IndexOf("-") >= 0)) e.Handled = true;

if (e.KeyChar == 46 && ((TextBox)sender).Text.IndexOf(".") >= 0) e.Handled = true;

}

/*

* 参数:d表示要四舍五入的数;i表示要保留的小数点后位数。

* 正负数都四舍五入,适合数据统计的显示

*/

double Round(double d, int i)

{

if (d >= 0)

{

d += 5 * Math.Pow(10, -(i + 1));

}

else

{

d += -5 * Math.Pow(10, -(i + 1));

}

string str = d.ToString();

string[] strs = str.Split('.');

int idot = str.IndexOf('.');

string prestr = strs[0];

string poststr = strs[1];

if (poststr.Length > i)

{

poststr = str.Substring(idot + 1, i);

}

string strd = prestr + "." + poststr;

d = Double.Parse(strd);

return d;

}

private void txtInshu2_TextChanged(object sender, EventArgs e)

{

}

private void txtInshu2_KeyPress_1(object sender, KeyPressEventArgs e)

{

OnlyEnterNumber(sender, e);

}

private void btnJisuan_Click(object sender, EventArgs e)

{

if (txtInshu1.Text == "") {

MessageBox.Show("因数1不能为空!", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning);

return;

}

if (txtInshu2.Text == "")

{

MessageBox.Show("因数2不能为空!", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning);

return;

}

double inshu1 = Convert.ToDouble(txtInshu1.Text);

double inshu2 = Convert.ToDouble(txtInshu2.Text);

double result = 0.0;

if (radioBtnJia.Checked) {

result = inshu1 + inshu2;

}

if (radioBtnJian.Checked)

{

result = inshu1 - inshu2;

}

if (radioBtnCheng.Checked)

{

result = inshu1 * inshu2;

}

if (radioBtnChu.Checked)

{

if (0 == inshu2)

{

MessageBox.Show("因数2做除数不能为0!", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning);

return;

}

result = inshu1 / inshu2;

result = Round(result, 6);

}

txtResult.Text = Convert.ToString(result);

}

}

}

因数输入框只允许输入数字和小数点负号的代码是从网络上引用的。

除法运算时四舍五入的处理也是引用自网络上的文章。

更多计算器功能实现,请点击专题: 计算器功能汇总 进行学习

关于Android计算器功能的实现,查看专题:Android计算器 进行学习。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

你可能感兴趣的:(web加减乘除法c#)