运算符 - 算术、关系、逻辑运算符

引言

在编程中,运算符是用于执行特定操作的符号。C++ 提供了多种类型的运算符,包括算术运算符、关系运算符和逻辑运算符等。理解这些运算符及其用法对于编写高效且无误的代码至关重要。本文将详细介绍 C++ 中的这三种基本运算符,并通过实例帮助读者更好地理解和掌握这些概念。


一、算术运算符(Arithmetic Operators)

算术运算符用于执行基本的数学运算,如加法、减法、乘法、除法和取模等。以下是 C++ 中常见的算术运算符:

运算符描述示例
+加法a + b
-减法a - b
*乘法a * b
/除法a / b
%取模(求余数)a % b
++自增a++ 或 ++a
--自减a-- 或 --a

示例:

#include <iostream>int main() {int a = 10;int b = 3;std::cout << "Addition: " << a + b << "\n";std::cout << "Subtraction: " << a - b << "\n";std::cout << "Multiplication: " << a * b << "\n";std::cout << "Division: " << a / b << "\n"; // 注意:整数除法会截断小数部分std::cout << "Modulus: " << a % b << "\n";int c = 5;std::cout << "Pre-increment (++c): " << ++c << "\n"; // 先自增再使用std::cout << "Post-increment (c++): " << c++ << "\n"; // 先使用再自增std::cout << "Final value of c: " << c << "\n";return 0;
}

二、关系运算符(Relational Operators)

关系运算符用于比较两个值之间的关系,返回一个布尔值(true 或 false)。以下是 C++ 中常见的关系运算符:

运算符描述示例
==等于a == b
!=不等于a != b
>大于a > b
<小于a < b
>=大于等于a >= b
<=小于等于a <= b

示例:

#include <iostream>int main() {int a = 10;int b = 20;std::cout << "Is a equal to b? " << (a == b) << "\n";std::cout << "Is a not equal to b? " << (a != b) << "\n";std::cout << "Is a greater than b? " << (a > b) << "\n";std::cout << "Is a less than b? " << (a < b) << "\n";std::cout << "Is a greater than or equal to b? " << (a >= b) << "\n";std::cout << "Is a less than or equal to b? " << (a <= b) << "\n";return 0;
}

三、逻辑运算符(Logical Operators)

逻辑运算符用于组合多个条件表达式,返回一个布尔值(true 或 false)。以下是 C++ 中常见的逻辑运算符:

运算符描述示例
&&逻辑与a && b
``
!逻辑非!a

示例:

#include <iostream>int main() {bool condition1 = true;bool condition2 = false;std::cout << "Logical AND (condition1 && condition2): " << (condition1 && condition2) << "\n";std::cout << "Logical OR (condition1 || condition2): " << (condition1 || condition2) << "\n";std::cout << "Logical NOT (!condition1): " << !condition1 << "\n";int x = 10;int y = 20;int z = 30;std::cout << "Complex condition ((x < y) && (y < z)): " << ((x < y) && (y < z)) << "\n";std::cout << "Complex condition ((x > y) || (y < z)): " << ((x > y) || (y < z)) << "\n";return 0;
}

四、总结

本文详细介绍了 C++ 中的三种基本运算符:算术运算符、关系运算符和逻辑运算符。每种运算符都有其独特的用途和特点,合理选择和使用它们可以让你的程序更加简洁、高效。希望这篇文章能够帮助你更好地理解 C++ 中的运算符。如果有任何问题或建议,请随时留言交流!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/65321.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

简单讲解关于微信小程序调整 miniprogram 后, tabbar 找不到图片的原因之一

微信小程序开发&#xff0c;[ miniprogram/app.json 文件内容错误]&#xff0c;["tabBar"]["list"][0]["iconPath"]: "/miniprogram/assets/tabbar/icon_main_home.png" 未找到 简单讲解关于调整 miniprogram 后&#xff0c; tabbar 找…

ThinkPHP 数据库操作详解:CRUD 实现与最佳实践

ThinkPHP 数据库操作详解&#xff1a;CRUD 实现与最佳实践 在现代 Web 开发中&#xff0c;数据库操作是应用程序的核心部分。ThinkPHP 作为一款流行的 PHP 框架&#xff0c;提供了强大的数据库操作功能&#xff0c;使得开发者能够高效地进行数据的增删改查&#xff08;CRUD&am…

《Ceph:一个可扩展、高性能的分布式文件系统》

大家觉得有意义和帮助记得及时关注和点赞!!! 和大多数分布式存储系统只支持单一的存储类型不同&#xff0c;Ceph 同时支持三种&#xff1a; 文件系统&#xff08;file system&#xff09;&#xff1a;有类似本地文件系统的层级结构&#xff08;目录树&#xff09;&#xff0c…

Kafka数据迁移全解析:同集群和跨集群

文章目录 一、同集群迁移二、跨集群迁移 Kafka两种迁移场景&#xff0c;分别是同集群数据迁移、跨集群数据迁移。 一、同集群迁移 应用场景&#xff1a; broker 迁移 主要使用的场景是broker 上线,下线,或者扩容等.基于同一套zookeeper的操作。 实践&#xff1a; 将需要新添加…

“智能控制的新纪元:2025年机器学习与控制工程国际会议引领变革

ICMLCE 2025 | 机器学习与控制工程国际会议 ✨宝子们&#xff0c;今天要为大家介绍的是一个在机器学习和控制工程领域备受瞩目的国际学术盛会——2025年机器学习与控制工程国际会议&#xff08;ICMLCE 2025&#xff09;。本次大会将在美丽的大理举行&#xff0c;旨在汇聚全球顶…

公路边坡安全监测中智能化+定制化+全面守护的应用方案

面对公路边坡的安全挑战&#xff0c;我们如何精准施策&#xff0c;有效应对风险&#xff1f;特别是在强降雨等极端天气下&#xff0c;如何防范滑坡、崩塌、路面塌陷等灾害&#xff0c;确保行车安全&#xff1f;国信华源公路边坡安全监测解决方案&#xff0c;以智能化、定制化为…

Julia语言的语法

深入理解Julia语言&#xff1a;高效科学计算的新宠 引言 在当今高速发展的技术环境中&#xff0c;科学计算和数据分析的需求日益增长。作为一种新兴的编程语言&#xff0c;Julia以其高效的性能和简洁的语法吸引了众多研究人员和开发者的注意。本文将深入探讨Julia语言的设计理…

pyqt和pycharm环境搭建

安装 python安装&#xff1a; https://www.python.org/downloads/release/python-3913/ python3.9.13 64位(记得勾选Path环境变量) pycharm安装&#xff1a; https://www.jetbrains.com/pycharm/download/?sectionwindows community免费版 换源&#xff1a; pip config se…

二级建造师考试题库及答案

一、多选题 1.建设行政管理部门对工程质量监督的内容有&#xff08;&#xff09;。 A.抽查质量检测单位的工程质量行为 B.抽查工程质量责任主体的工程质量行为 C.审核工程建设标准的完整性 D.参与工程质量事故的调查处理 E.监督工程竣工验收 答案&#xff1a;ABDE 解析…

在dynadot进行NS域名服务器设置后网站无法访问的可能原因

关于Dynadot Dynadot是通过ICANN认证的域名注册商&#xff0c;自2002年成立以来&#xff0c;服务于全球108个国家和地区的客户&#xff0c;为数以万计的客户提供简洁&#xff0c;优惠&#xff0c;安全的域名注册以及管理服务。 其他索引&#xff1a; Dynadot平台操作教程索引…

【初接触】【学习】编译 Rust 为 WebAssembly

前言 需要先了解以下知识&#xff1a; WebAssemblyRustwasm_bindgenwasm-packjs-sysweb-sysJavaScriptHTMLCSSwebpack 假设您已经了解所有知识点&#xff0c;并且您的环境中已安装了 Node.js和npm 以及 Rust 的完整开发工具链&#xff08;包括 rustc、cargo 和 rustup&#…

探秘仓颉编程语言:使用体验与功能剖析

目录 一、引言&#xff1a;仓颉登场&#xff0c;编程新纪元开启 二、初体验&#xff1a;搭建环境与 “Hello World” &#xff08;一&#xff09;环境搭建指南 &#xff08;二&#xff09;Hello World 初印象 三、核心特性剖析&#xff1a;智能、高效、安全多维解读 &…

[Java]合理封装第三方工具包(附视频)

-1.视频链接 视频版: 视频版会对本文章内容进行详细解释 [Java]合理封装第三方工具包_哔哩哔哩_bilibili 0.核心思想 对第三方工具方法进行封装,使其本地化,降低记忆和使用成本 1.背景 在我们的项目中,通常会引用一些第三方工具包,或者是使用jdk自带的一些工具类 例如: c…

Ubuntu环境 nginx.conf详解(三)

1、nginx.conf 结构详解&#xff1a; http 块&#xff1a;用于配置 HTTP 服务器的相关设置&#xff0c;包括处理 HTTP 和 HTTPS。 stream 块&#xff1a;用于配置 TCP/UDP 代理服务器&#xff0c;适用于需要进行四层负载均衡的情况。 ... # 全局块 events {...} …

AI真的可以“陪伴”吗?

人们普遍渴求陪伴&#xff0c;仅有4.6%的人认为自己的陪伴需求都被满足了&#xff0c;剩下大部分人群都面临着各种各样的社交困境。 “陪伴”有多个层次。最狭义的“陪伴”是在人与人之间发生的&#xff1b;但稍微放宽一些&#xff0c;宠物甚至植物、家具也会让…

Golang 的并发优势

在如今的编程领域&#xff0c;一个程序能够同时处理多个任务的能力非常重要&#xff0c;这就是所谓的并发处理。而 Golang 在并发编程方面表现十分出色&#xff0c;具有很多独特的优势&#xff0c;简直不要太简单。 一、轻量级的协程&#xff08;Goroutine&#xff09; 在传统…

基于cobra开发的k8s命令行管理工具k8s-manager

基于cobra开发的k8s命令行管理工具k8s-manager 如果觉得好用&#xff0c;麻烦给个Star!通用配置1 node 分析所有node的资源情况2 analysis 分析Node节点上的资源使用构成3 image 获取指定namespace的所有镜像地址4 resource 获取指定namespace的所有limit 与 Requests大小5 top…

从零开始C++游戏开发之第七篇:游戏状态机与回合管理

在游戏开发的道路上&#xff0c;状态管理是一个无法绕开的重要课题。尤其是在棋牌类游戏中&#xff0c;游戏的进行需要有条不紊地按照回合推进&#xff0c;同时管理多个游戏状态&#xff0c;如“等待玩家加入”、“游戏进行中”、“结算阶段”等。如何优雅且高效地实现这些逻辑…

USB Hub 检测设备

系列文章目录 xHCI 简单分析 USB Root Hub 分析 USB Hub 检测设备 文章目录 系列文章目录一、引言二、hub_eventshub_port_connect_changeusb_alloc_devusb_set_device_statehub_port_initusb_new_device 一、引言 USB Hub 检测设备 一文中讲到&#xff0c;当有 USB 插入时&…

MySQL从入门到入土---MySQL表的约束 (内含实践)---详细版

目录 引入&#xff1a; null 与not null default&#xff1a; comment列描述 &#xff1a; not null 和 default&#xff1a; zerofill &#xff1a; 主键&#xff1a;primary key 复合主键&#xff1a; 自增长:auto_increment 唯一键&#xff1a;unique key 外键&a…