一个程序最基本的结构莫过于3种:顺序,选择,循环。这篇讲讲顺序结构。

c++语言的运算符与表达式数量之多,在高级语言中是少见的,也使得它的语言功能十分完善。

c++的运算符有单目与双目之分(作用于一个或两个量),可分为以下几类:

1、算数运算符

用于各类数值运算,包括加(+)、减(-)、乘(*)、除(/)、求余(%,又称模运算)、自增(++)、自减(--)共七种。前5种为双目运算符,后2种为单目。

重点介绍:

模运算符:

求余运算符(%)是双目运算符,两个操作数只能都是整型数,其基本形式为a%b,其值为a除以b的余数,比如9%6=3。

除运算符:

如果两个操作数(a、b)均为整型数,则a/b的值为a除以b的整数部分。如:5/2=2,但5.0/2=2.5。

自增自减运算符:

它们用于对一个操作数进行加1或减1操作,其结果仍然赋予该操作数(必须为变量),常用于计数。

2、关系运算符

用于比较运算。包括大于(>)、小于(<)、等于(==)、大于等于(>=)、小于等于(<=)和不等于(!=)六种。都是双目运算符。其结果是整型,只有两种:0与1。0代表关系不成立,1代表关系成立。常用于条件判断语句。

3、逻辑运算符

用于逻辑运算。包括与(&&)、或(||)、非(!)三种,除最后一种外均为双目。逻辑运算的值也为“真”和“假”两种,用“1”和“0”分别表示。各个运算符的求值规则如下:

运算符 a=1 ,b=1 a=1,b=0 a=0,b=1 a=0,b=0
&& 1 0 0 0
|| 1 1 1 0
运算符 a=1 a=0
! 0 1

4、位操作运算符

使参加运算的量按二进制位进行运算。包括位与(&)、位或(|)、位非(~)、位异或(^)、左移(<<)、右移(>>)六种。

“位与”和“位或“跟“与”和“或”是一样的,不同在于位运算是对数的二进制位进行操作。如9|5,相当于00001001|00000101,其结果为00001101,即13。

而“位异或”则是逐位比较,相同则是0,不同为1。如9^5,相当于00001001^00000101,结果为00001100,即12。

“位非”也与“非”一样,逐位取反。

“左移”与“右移”指将左侧操作数的二进制右移/左移右侧操作数位,移出的舍弃,不足的补0。比如3<<4,就是指将00000011左移4位,即00110000(48),又如15>>2,是将00001111右移2位,得00000011(3)。左移a位实质上是乘2^a次,右移a位就是除以2^a次(余数舍弃)。

5、赋值运算符

用于赋值运算,分为简单赋值(=)、复合算数赋值(+=,-=,*=,/=,%=)和复合位运算赋值(&=,|=,^=,>>=,<<=)三类共十一种。

6、条件运算符

这是一个三目运算符,用于条件取值。

7、逗号运算符

用于将若干表达式合成一个表达式。

8、指针运算符

用于取内容(*)和取地址(&)两种运算。

9、求字节数运算符

用于计算数据类型所占的字节数(sizeof)。

10、特殊运算符

有括号(),下标[],成员(—>,.)等几种。

在初学者c++编程中,前5种运算符较为常用,其他的暂不需掌握。

补充:算术运算符、关系运算符、逻辑运算符和赋值运算符的优先级如下:

赋值运算符    逻辑运算符    关系运算符    算术运算符

低————————————————————————>高

基础篇(2):c++顺序结构程序设计的更多相关文章

  1. Python程序设计实验报告二:顺序结构程序设计(验证性实验)

      安徽工程大学 Python程序设计 实验报告 班级   物流191   姓名  崔攀  学号3190505136 成绩 日期     2020.3.22     指导老师       修宇 [实验 ...

  2. C++入门到理解阶段二基础篇(5)——C++流程结构

    1.顺序结构 程序从上到下执行 2.选择结构(判断结构) 判断结构要求程序员指定一个或多个要评估或测试的条件,以及条件为真时要执行的语句(必需的)和条件为假时要执行的语句(可选的). ​ C++ 编程 ...

  3. HTML基础篇之HTML基本结构

    课堂知识总结 第一接触和学习HTML知识在学习过程中对所属的标签的自己认为的理解和解释. HTML元素:文档里面的标签和内容. 比如:<h1>大家好</h1>  左边的是开始标 ...

  4. C#基础篇九OOP属性结构枚举

    1.设计一个Ticket类,有一个距离属性(本属性只读,在构造方法中赋值),不能为负数,有一个价格属性,价格属性只读,并且根据距离计算价格(1元/公里):-----------0-100公里 票价不打 ...

  5. 嵌入式Linux学习笔记之第一阶段---基础篇

    嵌入式Linux学习分五个阶段 第一阶段: 01嵌入式环境搭建初期 02C语言语法概述 03C语言内存操作 04c语言函数 05linux基础 06gun基础 第二阶段: 01-linux之io系统编 ...

  6. C语言程序设计第二次作业--顺序结构

    C语言程序设计第二次作业--顺序结构 1.输出带框文字:在屏幕上输出以下3行信息. ************* Welcome ************* 源程序 #include <stido ...

  7. 前端开发工程师 - 02.JavaScript程序设计 - 第1章.基础篇

    第1章--基础篇 JS介绍 html 网页的内容:css 网页的样式:javascript 网页的行为 i.e. hello world <!DOCTYPE html> <html& ...

  8. C语言程序设计第二次作业——顺序结构

    (一)改错题 1.输出带框文字:在屏幕上输出以下3行信息. 错误信息1: 错误原因:i和d位置错误 改正方法:i和d位置互换 错误信息2: 错误原因:\n后缺了一个" 改正方法:\n后加一个 ...

  9. C语言程序设计第二次作业—————顺序结构改

    1.输出带框文字:在屏幕上输出以下3行信息. ************* Welcome ************* 源程序 #include <stido.h> int mian() { ...

随机推荐

  1. State模式(状态设计模式)

    State??? State模式中,我们用类来表示状态.以类来表示状态后,我们就能通过切换类来方便地改变对象的状态.当需要增加新的状态时,如何修改代码这个问题也会很明确. 直接用状态代替硬编码 依赖于 ...

  2. P1977 出租车拼车(DP)

    题目背景 话说小 x 有一次去参加比赛,虽然学校离比赛地点不太远,但小 x 还是想坐 出租车去.大学城的出租车总是比较另类,有“拼车”一说,也就是说,你一个人 坐车去,还是一堆人一起,总共需要支付的钱 ...

  3. 利用mybatis-generator生成po

    import java.io.File; import java.util.ArrayList; import java.util.List; import org.mybatis.generator ...

  4. dos for循环

    in (phone.txt) do ( 127.0.0.1 > tmp_file ) ) do ( 127.0.0.1 > tmp_file )

  5. Hadoop TaskScheduler源码分析

    TaskScheduler是MapReduce中的任务调度器.在MapReduce中,JobTracker接收JobClient提交的Job,将它们按InputFormat的划分以及其他相关配置,生成 ...

  6. 双层列表 datagrid里属性

    frozenColumns: [ [{ title: "姓名"}] ], columns: [ [{"title":"延时原因"}], [{ ...

  7. 车牌号校验js

    var regExp = /(^[\u4E00-\u9FA5]{1}[A-Z0-9]{6}$)|(^[A-Z]{2}[A-Z0-9]{2}[A-Z0-9\u4E00-\u9FA5]{1}[A-Z0-9 ...

  8. 常见的SQL错误和解决方法

    前言 今天你会看到每个人——从新手到专家——在使用SQL时犯的各种常见错误.你不能永远避免犯任何错误,但是熟悉广泛的错误将帮助你在尽可能短的时间内解决这些错误. 注:在我们的例子中我们使用的是Orac ...

  9. asp.net MVC 4.0 Controller回顾——ModelBinding实现过程

    以DefaultModelBinder为例 为简单模型绑定(BindSimpleModel)和复杂模型绑定(BindComplexModel) public virtual object BindMo ...

  10. Docker的安全问题以及一些预防方案

    http://blog.csdn.net/Ruidu_Doer/article/details/53401523