我的编程空间,编程开发者的网络收藏夹
学习永远不晚

C#表达式和运算符详细解析

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

C#表达式和运算符详细解析

类型转换

Convert.To类型()

1、表达式

将变量和字面值(在使用运算符时,他们都称作操作数)与运算符组合起来就得到了表达式,它是计算的基本构建
简单的操作包括所有的基本书序操作,如加减乘除;还有专门用于处理布尔值的逻辑运算以及赋值运算。
比如表达式:c=a+b

让用户输入他的语文和数学成绩,计算他的总成绩

using System;
namespace 表达式
{
    class Program
    {
        static void Main(string[] args)
        {
            int a = 5;
            int b = 10;
            int c = a + b;
            Console.WriteLine(c);


            Console.WriteLine("请输入你的语文成绩");
            double chinese = Convert.ToDouble( Console.ReadLine());   //接收用户输入(字符串),并转换成Dobule类型
            Console.WriteLine("请输入你的数学成绩");
            double math = Convert.ToDouble(Console.ReadLine());
            Console.WriteLine("您的总成绩是{0},平均成绩是{1}", chinese+math, (math+chinese)/2);  // 字符串连接方式可以用“+”
            Console.ReadKey();

        }
    }
}

1.2 运算符分类

按操作数的个数

  • 一元运算符:处理一个操作数(int a=10)
  • 二元运算符:处理两个操作数 a>b
  • 三元运算符:处理三个操作数 (?:

按运算类型:

  • 数学运算符
  • 赋值运算符
  • 关系运算符
  • 布尔原酸符
  • 位运算符 (按为取反)
  • 其他运算符(is as)

  • var1=var2++ :先用后加,var1等于var2,var2的值加1
  • var1=++var2:先加后用(va2=)

2、数学运算符

  • var2=10
  • var1=var2++ 先用后加(var1=var2=10, var2的值加一(var2=10+1))
  • var1=++var2 先加后用 (var2加一(var2=10+1),var1等于var2+1)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace 数学运算符
{
    class Program
    {
        static void Main(string[] args)
        {
            int a = 5;
            int b = 3;
            int c = a / b;
            double d = a / b;
            
            double e = 5.0;
            double f = 3.0;
            double g = e / f;
            Console.WriteLine("c的值是{0},d的值是{1},g的值是{2}", c, d,g);
            Console.ReadKey();
        }
    }
}

结果:c的值是1,d的值是1,g的值是1.66666666666667

++/–

3、赋值运算符

4、关系运算符

5、布尔运算符

注:&&/||与&/|区别:&&/||可用于对数值执行操作,实际上,他们处理的是在储存在变量中的一系列位而不是变量的值

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace 布尔运算符
{
    class Program
    {
        static void Main(string[] args)
        {
            //&与运算符,||或运算符,!取反操作符,^异或运算符
            int a = 10;
            int b = 15;
            Console.WriteLine((10==a++)||(16==b--));
            Console.WriteLine("a的值是{0},b的值是{1}",a,b);  //输出结果是a的值是11,b的值是15
            //或运算符||前一个操作为true时,不在执行后一个操作内容,所是上面的结果
            Console.ReadKey();            
            
        }
    }
}

6、位运算符

位(bit):在计算机中存储所有数据都采用二进制,那么二进制的为,便是我们所有的bit
1Byte=8bit 1字节=8位
1k=1024Byte
1M=1024k
1G=1024M
1T=1024G

在大俗代码中都不适用这些运算符,但应知道这样的运算符存在。它们主要用于高度优化的代码,在这些代码中,使用其他数学操作的开销太高。因此它们通常用于驱动程序或系统代码

~ 按位取反
&与运算
|或运算
^异或
<<左移
>>右移

6.1 &按位与运算

6.2 或|按位运算

6.3 异或^按位运算符

6.4按位取反~按位预算符

6.5 左移<<运算符

var3=var1<<var2 var1向左移动var2位,将所得的值付给var3

6.6右移

var3=var1>>var2 var1向右移动var2位,将所得的值付给var3

左移一位,相当于乘以2;
右移一位,当当与除以2;然后去除非整数部分

7、其他运算符

7.1 字符连接运算符+

将两个字符串连接在一起组成一个新的字符串
备注:C#中“+”共三种用法

  • 数学算数运算符 var1=var2+var3
  • 乘以正1 var1 =+var2 (var1=var2*(+1))
  • 字符串连接 str1=“my name is” str2=“darly” str3=str1+" "+str2,则str3=“my name is darly” 7.2 is运算符

用于动态检查对象的运行时类型是否与给定类型兼容

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace 其他运算符
{
    class Program
    {
        static void Main(string[] args)
        {
            int a = 10;
            double b = 3.14;
            string c = "it is a string";
            bool mybool = false;
            mybool = a is int;
            Console.WriteLine("a is int\t"+mybool);   // \t是跳转到下一个制表符
            mybool = b is double;
            Console.WriteLine("b is doubule\t" + mybool);
            mybool = c is string;
            Console.WriteLine("c is string\t" + mybool);
            Console.ReadKey();
        }
    }
}

7.3 三元运算符

表达式1?表达式2:表达式3 表达式1为true则结果为表达式2,否则结果为表达式3
输出语句“I have 数量 pen” 当数量为1时为pen,数量大于1时为pens

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace 其他运算符
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("请输入您拥有的钢笔数量");
            int qty = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("I have {0} pen{1}", qty,qty>1?"s":"");
            //Console.ReadKey();
            // 比较用户输入数据与5的关系
            Console.WriteLine("请您输入要比较的数字");
            int number1 = Convert.ToInt32(Console.ReadLine());
            string result = number1 > 5 ? "大于等于" : "小于";
            Console.WriteLine("您输入的数字{0}5",result);
            Console.ReadKey();
        }
    }
}

8、运算优先级

总结练习

编程实现1532855秒是几天几小时几分钟几秒


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace 总结练习
{
    class Program
    {
        static void Main(string[] args)
        {
            // 方法1,利用取整再取余的方式逐级获取响应的单位值
            Console.WriteLine("请输入你要计算的秒数");
            int day = 24 * 60 * 60;
            int hour = 60 * 60;
            //int total = 1232855;
            int total = Convert.ToInt32(Console.ReadLine());
            int days = total / day;    //计算天数   利用总秒数对一天一共多少秒取整,得到天数
            int hours = (total % day) / hour; // 利用总秒数对一天一共多少秒取余数,得到不够一天的秒数,然后对一小时包含秒数整,得到小时数;
            int minutes = (total % day % hour)/60; //同样思路,利用两次取余得到不足一小时的数量,再对60秒取整得到分钟数
            int minutes2 = total % 3600 / 60;  //计算分钟的方式2,总秒数对一小时取余得到不足一小时的秒数然后取整60秒得到分钟数
            int second = total % 60; //用总数对60秒取余得到不足一分钟的秒数,就是秒

            Console.WriteLine("{0}天{1}小时{2}分钟{3}秒",days,hours,minutes,second);
            Console.WriteLine(minutes2+"分钟");
            Console.ReadLine();

        }
    }
}

到此这篇关于C#表达式和运算符详细解析的文章就介绍到这了,更多相关C#表达式和运算符内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

C#表达式和运算符详细解析

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

C++中运算符和表达式的示例分析

小编给大家分享一下C++中运算符和表达式的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!在编程语言中“表达式”可以近似于“公式”,也就是按照自己的预期进行
2023-06-29

C#运算符表达式的使用

这篇文章主要介绍“C#运算符表达式的使用”,在日常操作中,相信很多人在C#运算符表达式的使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C#运算符表达式的使用”的疑惑有所帮助!接下来,请跟着小编一起来学习吧
2023-06-18

C语言运算符与表达式实例分析

本篇内容主要讲解“C语言运算符与表达式实例分析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C语言运算符与表达式实例分析”吧!表达式函 数 概 述表达式是C语言的主体。在C语言中,表达式由操作符
2023-07-02

JavaScript基础之运算符与表达式详解

这篇文章主要为大家详细介绍了JavaScript中一些常见的运算符与表达式的具体使用,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起了解一下
2023-05-16

linux shell 逻辑运算符、逻辑表达式详细介绍

一、逻辑运算符 逻辑卷标 表示意思 1. 关于档案与目录的侦测逻辑卷标!-f 常用!侦测『档案』是否存在 eg: if [ -f filename ] -d 常用!侦测『目录』是否存在 -b 侦测是否为一个『 block 档案』 -
2022-06-04

JavaScript有哪些表达式和运算符

本篇内容主要讲解“JavaScript有哪些表达式和运算符”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“JavaScript有哪些表达式和运算符”吧!  1、表达式  在定义完变量后,就可以对它
2023-06-03

怎么理解python运算对象、运算符、表达式和语句

本篇内容主要讲解“怎么理解python运算对象、运算符、表达式和语句”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么理解python运算对象、运算符、表达式和语句”吧!编程的本质就是数据和运算
2023-06-02

C#利用后缀表达式解析计算字符串公式

当我们拿到一个字符串比如:20+31*(100+1)的时候用口算就能算出结果为3151,因为这是中缀表达式对于人类的思维很简单,但是对于计算机就比较复杂了。相对的后缀表达式适合计算机进行计算。本文就来用后缀表达式实现解析计算字符串公式,需要的可以参考一下
2023-02-23

JavaScript运算符与表达式实例代码分析

本篇内容主要讲解“JavaScript运算符与表达式实例代码分析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“JavaScript运算符与表达式实例代码分析”吧!一、===严格相等运算符,用作逻
2023-07-06

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录