C#练习——窗体实现简单计算器,完成加,减,乘,除,取余,简单运算

2023-11-09

c# windows窗体练习:实现简单计算器,完成加,减,乘,除,取余,简单运算

//编写环境:vs2017
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace windows_test
{
    public partial class Form1 : Form
    {
        Single a;
        public Form1()
        {
            InitializeComponent();
        }

        private void textBox1_TextChanged(object sender, EventArgs e)
        {

        }

        private void button1_Click(object sender, EventArgs e)
        {
            label1.Text = "+";
            a = Convert.ToSingle(textBox1.Text) + Convert.ToSingle(textBox2.Text);
            label2.Text = a.ToString();//ToString()是一种object类的方法,实现将数字数据类型转换为String(字符串)类型,返回原生数据类型的string对象值

        }

        private void button4_Click(object sender, EventArgs e)
        {
            label1.Text = "/";
            if(Convert.ToSingle(textBox2.Text)!=0)
            {
                a = Convert.ToSingle(textBox1.Text) / Convert.ToSingle(textBox2.Text);//强制转换为single型  single类型表示单精度实数
                label2.Text = a.ToString();
            }
            else
            {
                MessageBox.Show("除数不能为0!请重新输入:");//MessageBox.show()方法,实现c# windows窗体中的弹出式提示语句(警告语句)
            }
        }

        private void button3_Click(object sender, EventArgs e)
        {
            label1.Text = "*";
            a = Convert.ToSingle(textBox1.Text) * Convert.ToSingle(textBox2.Text);
            label2.Text = a.ToString();
        }

        private void button2_Click(object sender, EventArgs e)
        {
            label1.Text = "-";
            a = Convert.ToSingle(textBox1.Text) - Convert.ToSingle(textBox2.Text);
            label2.Text = a.ToString();
        }

        private void button6_Click(object sender, EventArgs e)
        {
            label1.Text = "%";
            if (Convert.ToSingle(textBox2.Text) != 0)
            {
                a = Convert.ToSingle(textBox1.Text) % Convert.ToSingle(textBox2.Text);//强制转换为single型  single类型表示单精度实数
                label2.Text = a.ToString();
            }
            else
            {
                MessageBox.Show("除数不能为0!请重新输入:");//MessageBox.show()方法,实现c# windows窗体中的弹出式提示语句(警告语句)
            }
        }

        private void button5_Click(object sender, EventArgs e)
        {
            this.Close();//退出窗体,结束程序并关闭程序
        }
    }
}

重难点:

1.ToString()方法将数值型转换为字符串类型

ToString()是一种object类的方法,继承object类,使用ToString()方法,即方法的重写
1)如果方法使用了原生的数据类型作为参数,返回原生数据类型的 String 对象值。 原生数据类型—>String 类型
2)如果方法有两个参数, 返回用第二个参数指定基数表示的第一个参数的字符串表示形式。 例:2.5.ToString(“C”) =》¥2.50
或 {0[,M:D]}([] 表示可选,与c#输出时设置格式语法相同)
按指定格式输出

返回值:
(1)toString(): 返回表示 Integer 值的 String 对象。
语法:值或变量.ToString();
(2)toString(int i): 返回表示指定 int 的 String 对象。
语法:原生数据类型.ToString(值或变量);
(2种形式均可,且意义相等)

2.Single 型 和 int 型的区别:
Integer:整数数据类型, 表示整数 / 整型数
Single:单精度的实数 表示单精度浮点型(实数)

Single的范围更大

3.MessageBox.Show()方法

用途:弹出一个消息框,实现 windows窗体中的弹出式提示语句(警告语句),并不关闭程序
语法:MessageBox.Show("提示语句“);

4.this.Close();//退出窗体,结束程序并关闭程序
常添加在按钮上,(点击按钮关闭窗体(程序),建设关闭按钮)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C#练习——窗体实现简单计算器,完成加,减,乘,除,取余,简单运算 的相关文章

  • 在模板类中声明模板友元类时出现编译器错误

    我一直在尝试实现我自己的链表类以用于教学目的 我在迭代器声明中指定了 List 类作为友元 但它似乎无法编译 这些是我使用过的 3 个类的接口 Node h define null Node
  • 在 xaml 中编写嵌套类型时出现设计时错误

    我创建了一个用户控件 它接受枚举类型并将该枚举的值分配给该用户控件中的 ComboBox 控件 很简单 我在数据模板中使用此用户控件 当出现嵌套类型时 问题就来了 我使用这个符号来指定 EnumType x Type myNamespace
  • C# 异步等待澄清?

    我读了here http blog stephencleary com 2012 02 async and await html that 等待检查等待的看看它是否有already完全的 如果 可等待已经完成 那么该方法将继续 运行 同步
  • 通过引用传递 [C++]、[Qt]

    我写了这样的东西 class Storage public Storage QString key const int value const void add item QString int private QMap
  • 机器Epsilon精度差异

    我正在尝试计算 C 中双精度数和浮点数的机器 epsilon 值 作为学校作业的一部分 我在 Windows 7 64 位中使用 Cygwin 代码如下 include
  • 随着时间的推移,添加到 List 变得非常慢

    我正在解析一个大约有 1000 行的 html 表 我从一个字符串中添加 10 个字符串 td 每行到一个list td
  • 传递给函数时多维数组的指针类型是什么? [复制]

    这个问题在这里已经有答案了 我在大学课堂上学习了 C 语言和指针 除了多维数组和指针之间的相似性之外 我认为我已经很好地掌握了这个概念 我认为由于所有数组 甚至多维 都存储在连续内存中 因此您可以安全地将其转换为int 假设给定的数组是in
  • 访问外部窗口句柄

    我当前正在处理的程序有问题 这是由于 vista Windows 7 中增强的安全性引起的 特别是 UIPI 它阻止完整性级别较低的窗口与较高完整性级别的窗口 对话 就我而言 我想告诉具有高完整性级别的窗口进入我们的应用程序 它在 XP 或
  • WcfSvcHost 的跨域异常

    对于另一个跨域问题 我深表歉意 我一整天都在与这个问题作斗争 现在已经到了沸腾的地步 我有一个 Silverlight 应用程序项目 SLApp1 一个用于托管 Silverlight SLApp1 Web 的 Web 项目和 WCF 项目
  • 为什么这个字符串用AesCryptoServiceProvider第二次解密时不相等?

    我在 C VS2012 NET 4 5 中的文本加密和解密方面遇到问题 具体来说 当我加密并随后解密字符串时 输出与输入不同 然而 奇怪的是 如果我复制加密的输出并将其硬编码为字符串文字 解密就会起作用 以下代码示例说明了该问题 我究竟做错
  • 如何定义一个可结构化绑定的对象的概念?

    我想定义一个concept可以检测类型是否T can be 结构化绑定 or not template
  • 实例化类时重写虚拟方法

    我有一个带有一些虚函数的类 让我们假设这是其中之一 public class AClassWhatever protected virtual string DoAThingToAString string inputString retu
  • C 编程:带有数组的函数

    我正在尝试编写一个函数 该函数查找行为 4 列为 4 的二维数组中的最大值 其中二维数组填充有用户输入 我知道我的主要错误是函数中的数组 但我不确定它是什么 如果有人能够找到我出错的地方而不是编写新代码 我将不胜感激 除非我刚去南方 我的尝
  • 如何实例化 ODataQueryOptions

    我有一个工作 简化 ODataController用下面的方法 public class MyTypeController ODataController HttpGet EnableQuery ODataRoute myTypes pub
  • 如何在 Android 中使用 C# 生成的 RSA 公钥?

    我想在无法假定 HTTPS 可用的情况下确保 Android 应用程序和 C ASP NET 服务器之间的消息隐私 我想使用 RSA 来加密 Android 设备首次联系服务器时传输的对称密钥 RSA密钥对已在服务器上生成 私钥保存在服务器
  • 相当于Linux中的导入库

    在 Windows C 中 当您想要链接 DLL 时 您必须提供导入库 但是在 GNU 构建系统中 当您想要链接 so 文件 相当于 dll 时 您就不需要链接 为什么是这样 是否有等效的 Windows 导入库 注意 我不会谈论在 Win
  • 当文件流没有新数据时如何防止fgets阻塞

    我有一个popen 执行的函数tail f sometextfile 只要文件流中有数据显然我就可以通过fgets 现在 如果没有新数据来自尾部 fgets 挂起 我试过ferror and feof 无济于事 我怎样才能确定fgets 当
  • MySQL Connector C/C API - 使用特殊字符进行查询

    我是一个 C 程序 我有一个接受域名参数的函数 void db domains query char name 使用 mysql query 我测试数据库中是否存在域名 如果不是这种情况 我插入新域名 char query 400 spri
  • 指针和内存范围

    我已经用 C 语言编程有一段时间了 但对 C 语言还是很陌生 有时我对 C 处理内存的方式感到困惑 考虑以下有效的 C 代码片段 const char string void where is this pointer variable l
  • Mono 应用程序在非阻塞套接字发送时冻结

    我在 debian 9 上的 mono 下运行一个服务器应用程序 大约有 1000 2000 个客户端连接 并且应用程序经常冻结 CPU 使用率达到 100 我执行 kill QUIT pid 来获取线程堆栈转储 但它总是卡在这个位置

随机推荐

  • CUDA编程 之 二进制工具与反编译

    两个 反编译工具 cuobjdump and nvdisasm 参考 http blog csdn net dark5669 article details 62264312
  • python中的copy和deepcopy

    数据处理经常会用到引用或者赋值 Python中的可变类型变量在操作时需要注意拷贝的方式 特别在实现复杂功能的函数时 一不小心就会改变原来的数据内容 data name anne age 18 scores 语文 130 数学 150 英语
  • CUDA和cuDNN各版本下载及版本对应关系

    CUDA和cnDNN是支持NVIDIA支持GPU的两个库 分别用于高性能计算和深度神经网络计算的支持 CUDA Compute Unified Device Architecture 是NVIDIA支持GPU的通用并行计算架构 该架构使GP
  • Python中常用的处理数据的方法——replace()方法

    replace 方法 描述 Python replace 方法用于把字符串中指定的旧子字符串替换成指定的新子字符串 如果指定 count 可选参数则替换指定的次数 默认全部替换 replace 方法语法 S replace old new
  • R包安装记录

    因为重复安装会引起某些问题以及冲突 已安装 library pheatmap 热图包 library corrplot 热图包 library Hmisc library dplyr
  • 一起学大数据|最详细的大数据学习资源教程,呕心沥血全部分享

    跟大家已经分享了这么长时间的大数据文章了 我们的一起来学大数据系列已经将Java和Linux全部做了一次基础的分享 今天 我把我整理的全套大数据资源分享给大家 一起共同学习 记得关注呦 很多初学者 对大数据的概念都是模糊不清的 大数据是什么
  • 常用设计模式-观察者模式

    观察者模式定义对象间的一种一对多的依赖关系 当一个对象的状态发生改变时 所有依赖于它的对象都得到通知并被自动更新 它还有两个别名 依赖 Dependents 发布 订阅 Publish Subsrcibe 当观察者观察到事件到来之后 通知对
  • hive —— 分区表

    hive 分区表 为了对表进行合理的管理以及提高查询效率 Hive可以将表组织成 分区 一个分区实际上就是表下的一个目录 一个表可以在多个维度上进行分区 分区之间的关系就是目录树的关系 通过PARTITIONED BY子句指定 分区的顺序决
  • zookeeper集群搭建

    一 安装zookeeper Zookeeper的下载地址http mirror bit edu cn apache zookeeper zookeeper 3 4 10 zookeeper集群需要java环境支持 所以要提前安装好JDK 在
  • 区分什么是Java内存模型(JMM)和 JVM运行时数据区

    文章目录 一 概念区分 1 什么是内存模型 什么是 内存区域 运行时数据区 2 为什么要有Java内存模型 2 1 硬件的效率与一致性 2 2 CPU和缓存的一致性 2 2 1 为什么需要CPU cache 2 2 2 三级缓存 L1 L2
  • css引入本地电脑、服务器字体

    font face font family DINProRegular src url fonts DINProRegular DINProRegular eot src url fonts fonts DINProRegular DINP
  • Vmware搭建软路由教程(Openwrt)

    Vmware搭建软路由 准备工作 vmware虚拟机 OpenWrt on VMware master包 https github com luoqeng OpenWrt on VMware提供下载 安装步骤 一 openwrt虚拟机安装
  • Vmware+UOS-server-1050e虚拟机安装(含软件链接)

    1 环境准备 以下使用的系统镜像是 uniontechos server 20 1050e amd64 iso 官网下载地址 统信UOS生态社区 打造操作系统创新生态 Vmware 使用的系统如果是win11 必须安装vmware16 官网
  • jQuery.获取修改value

    获取修改value val 方法 获取和修改有value属性的元素 有value属性的元素有input botton select等 相当于JavaScript中的value
  • FileInputStream的两种读入方式

    package Inputstream import org omg CORBA PUBLIC MEMBER import org testng annotations Test import java io FileInputStream
  • 使用libgmp时出现: 【C4146 一元负运算符应用于无符号类型,结果仍为无符号类型】的解决方案

    vs2019下 使用libgmp时出现 C4146 一元负运算符应用于无符号类型 结果仍为无符号类型 的错误 使用网上说的 关闭SDL检查 的方法无效 用下面的方法解决了这个问题 在 include
  • Pineapple Incident【Codeforces 697 A】

    Codeforces Round 362 Div 2 A 简单题 include
  • TPO39

    Some people hold the viewpoint that it was easier to distinguish a secure and successful job in the past instead of in t
  • 数据结构链表题集

    题目一 113 删除排序链表中的重复数字 二 LintCode 思路 创建哨兵位头结点 原地删除 class Solution public param head head is the head of the linked list re
  • C#练习——窗体实现简单计算器,完成加,减,乘,除,取余,简单运算

    c windows窗体练习 实现简单计算器 完成加 减 乘 除 取余 简单运算 编写环境 vs2017 using System using System Collections Generic using System Component