当前位置: 首页 > news >正文

四、C#—变量,表达式,运算符(2)

🌻🌻 目录

  • 一、表达式
    • 1.1 什么是表达式
    • 1.2 表达式的基本组成
  • 二、运算符
    • 2.1 算术运算符
      • 2.1.1 使用 / 运算符时的注意事项
      • 2.1.2 使用%运算符时的注意事项
    • 2.2 赋值运算符
      • 2.2.1 简单赋值运算符
      • 2.2.2 复合赋值运算符
    • 2.3 关系运算符
    • 2.4 逻辑运算符
      • 2.4.1 逻辑运算符的使用场合
      • 2.4.2 逻辑运算符的规则
      • 2.4.3 && 与 & 、|| 与 | 的区别
      • 2.4.4 逻辑运算符的使用
    • 2.5 位运算符
      • 2.5.1 位运算符示例
      • 2.5.2 移位运算符
    • 2.6 其它特殊运算符
      • 2.6.1 条件运算符
        • 2.6.1.1 条件运算符的基本使用
        • 2.6.1.2 条件运算符的嵌套使用
      • 2.6.2 逗号运算符
      • 2.6.3 is 运算符
    • 2.7 运算符的优先级与结合性
      • 2.7.1 运算符的优先级
      • 2.7.2 运算符的结合性
      • 2.7.3 () 的特殊使用
      • 2.7.4 运算符优先级问题

一、表达式

在这里插入图片描述

1.1 什么是表达式

在这里插入图片描述

1.2 表达式的基本组成

在这里插入图片描述

二、运算符

2.1 算术运算符

在这里插入图片描述
在这里插入图片描述

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace demo
{class Program{static void Main(string[] args){int C = 89;int cShap = 90;int sql = 60;Console.WriteLine("cShap课和sql课的分数之差为"+(cShap-sql));Console.WriteLine("三门课的平均分"+((C+cShap+sql)/3));Console.ReadLine();}}
}

2.1.1 使用 / 运算符时的注意事项

在这里插入图片描述

在这里插入图片描述

2.1.2 使用%运算符时的注意事项

在这里插入图片描述
在这里插入图片描述

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace demo
{class Program{static void Main(string[] args){double i = -6.5;int j = -2;double a = i % j;Console.WriteLine(a);Console.ReadLine();}}
}

2.2 赋值运算符

在这里插入图片描述

2.2.1 简单赋值运算符

简单赋值运算符示例

在这里插入图片描述

在这里插入图片描述

2.2.2 复合赋值运算符

在这里插入图片描述
在这里插入图片描述

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace ConsoleApp1
{class Program{static void Main(string[] args){int age = 25;Console.WriteLine("小明今年的年龄是" + age);Console.WriteLine("小明再过5年的年龄是" + (age += 5));Console.ReadLine();}}
}

复合赋值运算符的优势

在这里插入图片描述

复合赋值运算符的劣势

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

2.3 关系运算符

在这里插入图片描述

示例

在这里插入图片描述

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace ConsoleApp3
{class Program{static void Main(string[] args){int num1 = 4, num2 = 7, num3 = 7;Console.WriteLine("num1等于num2:" + (num1 == num2));Console.WriteLine("num1不等于num2:" + (num1!= num2));Console.WriteLine("num1大于num2:" + (num1 > num2));Console.WriteLine("num1小于num2:" + (num1 < num2));Console.WriteLine("num1大于等于num2:" + (num1>= num2));Console.WriteLine("num1小于等于num2:" + (num1 <= num2));Console.ReadLine();}}
}

如何同时使用多个关系运算符

在这里插入图片描述

在这里插入图片描述

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace ConsoleApp3
{class Program{static void Main(string[] args){int num1 = 4, num2 = 7, num3 = 7;Console.WriteLine("num1等于num2:" + (num1 == num2));Console.WriteLine("num1大于num2大于num3:"+(num1 > num2 && num2 > num3));Console.ReadLine();}}
}

2.4 逻辑运算符

2.4.1 逻辑运算符的使用场合

在这里插入图片描述

逻辑运算符

在这里插入图片描述

2.4.2 逻辑运算符的规则

在这里插入图片描述

2.4.3 && 与 & 、|| 与 | 的区别

&& 当第一个为真时,会判断第二是否为真,当第一个为假时,不会判断第二个是否再为真假;
& 当第一个为真时,会判断第二个为真,当第一个为假时,也会判断第二个是否为真假。
|| 当第一个为真时,会判断第二是否为真,当第一个为假时,不会判断第二个是否再为真假;
| 当第一个为真时,会判断第二个为真,当第一个为假时,也会判断第二个是否为真假。

在这里插入图片描述

2.4.4 逻辑运算符的使用

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace ConsoleApp4
{class Program{static void Main(string[] args){Console.WriteLine("请输入用户名:");String name = Console.ReadLine();Console.WriteLine("请输入密码:");String pwd = Console.ReadLine();if ("mr" == name && "mrsoft" == pwd) {Console.WriteLine("登录成功");}else{Console.WriteLine("登录失败");}Console.ReadLine();}}
}

2.5 位运算符

在这里插入图片描述

2.5.1 位运算符示例

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace ConsoleApp5
{class Program{static void Main(string[] args){Console.WriteLine("请输入密码:");int pwd = Convert.ToInt32(Console.ReadLine());Console.WriteLine("请输入密钥:");int key = Convert.ToInt32(Console.ReadLine());int pwdkey = pwd ^ key;Console.WriteLine("加密的密码为:"+pwdkey);Console.ReadLine();}}
}

2.5.2 移位运算符

移位运算符之左移位运算

在这里插入图片描述

移位运算符之左移位运算

在这里插入图片描述

在这里插入图片描述

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace ConsoleApp5
{class Program{static void Main(string[] args){int a = 368;Console.WriteLine("左移运算2位为:" + (a << 2));Console.WriteLine("右移运算2位为:"+(a >> 2));Console.ReadLine();}}
}

2.6 其它特殊运算符

2.6.1 条件运算符

2.6.1.1 条件运算符的基本使用

在这里插入图片描述
在这里插入图片描述

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace ConsoleApp5
{class Program{static void Main(string[] args){int a = 368;string result = a > 300 ? "是真的" : "假的";Console.WriteLine(result);Console.ReadLine();}}
}
2.6.1.2 条件运算符的嵌套使用

在这里插入图片描述

使用条件运算符的注意事项

在这里插入图片描述

2.6.2 逗号运算符

在这里插入图片描述

2.6.3 is 运算符

在这里插入图片描述

在这里插入图片描述

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace ConsoleApp5
{class Program{static void Main(string[] args){int a = 368;bool result = a is object;Console.WriteLine(result);Console.ReadLine();}}
}

2.7 运算符的优先级与结合性

2.7.1 运算符的优先级

在这里插入图片描述

2.7.2 运算符的结合性

在这里插入图片描述

2.7.3 () 的特殊使用

在这里插入图片描述
在这里插入图片描述

示例

在这里插入图片描述

2.7.4 运算符优先级问题

在这里插入图片描述

相关文章:

四、C#—变量,表达式,运算符(2)

&#x1f33b;&#x1f33b; 目录 一、表达式1.1 什么是表达式1.2 表达式的基本组成 二、运算符2.1 算术运算符2.1.1 使用 / 运算符时的注意事项2.1.2 使用%运算符时的注意事项 2.2 赋值运算符2.2.1 简单赋值运算符2.2.2 复合赋值运算符 2.3 关系运算符2.4 逻辑运算符2.4.1 逻辑…...

【WSN】基于蚁群算法的WSN路由协议(最短路径)消耗节点能量研究(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…...

JVM的内存分配及垃圾回收

内存分配 在了解Java的内存管理前&#xff0c;需要知道JVM中的内存分配。 栈 存储局部变量。在方法的定义中或在方法中声明的变量为局部变量&#xff1b;栈内存中的数据在该方法结束&#xff08;返回或抛出异常或方法体运行到最后&#xff09;时自动释放栈中存放的数据结构为…...

Python实现查询一个文件中的pdf文件中的关键字

要求&#xff0c;查询一个文件中的pdf文件中的关键字&#xff0c;输出关键字所在PDF文件的文件名及对应的页数。 import os import PyPDF2def search_pdf_files(folder_path, keywords):# 初始化结果字典&#xff0c;以关键字为键&#xff0c;值为包含关键字的页面和文件名列表…...

【计算机网络笔记一】网络体系结构

IP和路由器概念 两台主机如何通信呢&#xff1f; 首先&#xff0c;主机的每个网卡都有一个全球唯一地址&#xff0c;MAC 地址&#xff0c;如 00:10:5A:70:33:61 查看 MAC 地址&#xff1a; windows: ipconfig / alllinux&#xff1a;ifconfig 或者 ip addr 同一个网络的多…...

硕士应聘大专老师

招聘信息 当地人社局、学校&#xff08;官方&#xff09; 公众号&#xff08;推荐&#xff09;&#xff1a; 辅导员招聘 厦门人才就业信息平台 高校人才网V 公告出完没多久就要考试面试&#xff0c;提前联系当地院校&#xff0c;问是否招人。 校招南方某些学校会直接去招老师。…...

Gram矩阵

Gram矩阵如何计算 Gram 矩阵是由一组向量的内积构成的矩阵。如果你有一组向量 v 1 , v 2 , … , v n v_1, v_2, \ldots, v_n v1​,v2​,…,vn​&#xff0c;Gram 矩阵 G G G 的元素 G i j G_{ij} Gij​ 就是向量 v i v_i vi​ 和向量 v j v_j vj​ 的内积。数学上&#x…...

【数据结构】七大排序算法详解

目录 ♫什么是排序 ♪排序的概念 ♪排序的稳定性 ♪排序的分类 ♪常见的排序算法 ♫直接插入排序 ♪基本思想 ♪算法实现 ♪算法稳定性 ♪时间复杂度 ♪空间复杂度 ♫希尔排序 ♪基本思想 ♪算法实现 ♪算法稳定性 ♪时间复杂度 ♪空间复杂度 ♫直接选择排序 ♪基本思想 ♪算法…...

OpenCV之VideoCapture

VideoCaptrue类对视频进行读取操作以及调用摄像头。 头文件&#xff1a; #include <opencv2/video.hpp> 主要函数如下&#xff1a; 构造函数 C: VideoCapture::VideoCapture(); C: VideoCapture::VideoCapture(const string& filename); C: VideoCapture::Video…...

ESP32微控制器与open62541库: 详细指南实现OPC UA通信协议_C语言实例

1. 引言 在现代工业自动化和物联网应用中&#xff0c;通信协议起着至关重要的作用。OPC UA&#xff08;开放平台通信统一架构&#xff09;是一个开放的、跨平台的通信协议&#xff0c;被广泛应用于工业4.0和物联网项目中。本文将详细介绍如何在ESP32微控制器上使用C语言和open…...

怎样快速打开github.com

访问这个网站很慢是因为有DNS污染&#xff0c;被一些别有用心的人搞了鬼了&#xff0c; 可以使用火狐浏览器开启火狐浏览器的远程dns解析就可以了.我试了一下好像单独这个办法不一定有用&#xff0c;要结合修改hosts文件方法&#xff0c;双重保障 好像就可以了...

【C#】.Net基础语法二

目录 一、字符串(String) 【1.1】字符串创建和使用 【1.2】字符串其他方法 【1.3】字符串格式化的扩展方法 【1.4】字符串空值和空对象比较 【1.5】字符串中的转移字符 【1.6】大写的String和小写的string 【1.7】StringBuilder类的重要性 二、数组(Array) 【2.1】声…...

C++之this指针总结(二百二十)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 人生格言&#xff1a; 人生…...

C++——如何正确的使用STL中的vector?

什么是vector&#xff1f; 在STL&#xff08;标准模板库&#xff09;中&#xff0c;vector是一种动态数组容器&#xff0c;可根据需要自动增长或缩小。它可以存储任意类型的元素&#xff0c;并且支持快速的随机访问。 vector是表示可变大小数组的序列容器vector采用的是连续的…...

【C语言】模拟实现内存函数

本篇文章目录 相关文章1. 模拟 memcpy 内存拷贝2. 模拟 memmove 内存移动 相关文章 【C语言】数据在内存中是以什么顺序存储的&#xff1f;【C语言】整数在内存中如何存储&#xff1f;又是如何进行计算使用的&#xff1f;【C语言】利用void*进行泛型编程【C语言】4.指针类型部…...

Jenkins学习笔记3

gitgithubjenkins&#xff1a; 架构图&#xff1a; 说明&#xff1a;jenkins知道github有更新了&#xff0c;就pull进行构建build&#xff0c;编译、自动化测试。然后部署到应用服务器。 maven java的项目构建工具。 在开发者电脑上创建空密码密钥对。 [rootgit-developer ~…...

基于单片机火灾报警器仿真设计

一、系统方案 1、本设计采用51单片机作为主控器。 2、DS18B20采集温度值送到液晶1602显示。 3、MQ2采集烟雾值&#xff0c;送到液晶1602显示。 4、按键设置温度报警值&#xff0c;大于报警值&#xff0c;声光报警。 二、硬件设计 原理图如下&#xff1a; 三、单片机软件设计…...

阿里测开面试大全(一)附答案完整版

万字长文&#xff0c;建议收藏 1 什么是POM&#xff0c;为什么要使用它&#xff1f; POM是Page Object Model的简称&#xff0c;它是一种设计思想&#xff0c;而不是框架。大概的意思是&#xff0c;把一个一个页面&#xff0c;当做一个对象&#xff0c;页面的元素和元素之间操…...

STL-常用容器

string容器 string构造函数 string本质&#xff1a;类 string和char*区别&#xff1a; char* 是一个指针 string是一个类&#xff0c;类内部封装了char*&#xff0c;管理这个字符串&#xff0c;是一个char*型的容器。 特点&#xff1a; string类内部封装了很多成员方法 …...

【owt】关闭microk8s 等无关服务

打算部署下owt,发现之前跑了microk8s ,一直运行:操作指令 // 1. 启动 microk8s.start// 2. 关闭 microk8s.stop// 3. kubectl 操作 // --- 查看 cluster microk8s.kubectl cluster-info// --- 查看 nodes microk8s.kubectl get nodes// --- 查看 pods microk8s.kubectl get …...

XML Group端口详解

在XML数据映射过程中&#xff0c;经常需要对数据进行分组聚合操作。例如&#xff0c;当处理包含多个物料明细的XML文件时&#xff0c;可能需要将相同物料号的明细归为一组&#xff0c;或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码&#xff0c;增加了开…...

使用VSCode开发Django指南

使用VSCode开发Django指南 一、概述 Django 是一个高级 Python 框架&#xff0c;专为快速、安全和可扩展的 Web 开发而设计。Django 包含对 URL 路由、页面模板和数据处理的丰富支持。 本文将创建一个简单的 Django 应用&#xff0c;其中包含三个使用通用基本模板的页面。在此…...

基于距离变化能量开销动态调整的WSN低功耗拓扑控制开销算法matlab仿真

目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.算法仿真参数 5.算法理论概述 6.参考文献 7.完整程序 1.程序功能描述 通过动态调整节点通信的能量开销&#xff0c;平衡网络负载&#xff0c;延长WSN生命周期。具体通过建立基于距离的能量消耗模型&am…...

在鸿蒙HarmonyOS 5中实现抖音风格的点赞功能

下面我将详细介绍如何使用HarmonyOS SDK在HarmonyOS 5中实现类似抖音的点赞功能&#xff0c;包括动画效果、数据同步和交互优化。 1. 基础点赞功能实现 1.1 创建数据模型 // VideoModel.ets export class VideoModel {id: string "";title: string ""…...

蓝牙 BLE 扫描面试题大全(2):进阶面试题与实战演练

前文覆盖了 BLE 扫描的基础概念与经典问题蓝牙 BLE 扫描面试题大全(1)&#xff1a;从基础到实战的深度解析-CSDN博客&#xff0c;但实际面试中&#xff0c;企业更关注候选人对复杂场景的应对能力&#xff08;如多设备并发扫描、低功耗与高发现率的平衡&#xff09;和前沿技术的…...

从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)

设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile&#xff0c;新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...

DBAPI如何优雅的获取单条数据

API如何优雅的获取单条数据 案例一 对于查询类API&#xff0c;查询的是单条数据&#xff0c;比如根据主键ID查询用户信息&#xff0c;sql如下&#xff1a; select id, name, age from user where id #{id}API默认返回的数据格式是多条的&#xff0c;如下&#xff1a; {&qu…...

CRMEB 框架中 PHP 上传扩展开发:涵盖本地上传及阿里云 OSS、腾讯云 COS、七牛云

目前已有本地上传、阿里云OSS上传、腾讯云COS上传、七牛云上传扩展 扩展入口文件 文件目录 crmeb\services\upload\Upload.php namespace crmeb\services\upload;use crmeb\basic\BaseManager; use think\facade\Config;/*** Class Upload* package crmeb\services\upload* …...

在WSL2的Ubuntu镜像中安装Docker

Docker官网链接: https://docs.docker.com/engine/install/ubuntu/ 1、运行以下命令卸载所有冲突的软件包&#xff1a; for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done2、设置Docker…...

Linux 中如何提取压缩文件 ?

Linux 是一种流行的开源操作系统&#xff0c;它提供了许多工具来管理、压缩和解压缩文件。压缩文件有助于节省存储空间&#xff0c;使数据传输更快。本指南将向您展示如何在 Linux 中提取不同类型的压缩文件。 1. Unpacking ZIP Files ZIP 文件是非常常见的&#xff0c;要在 …...