一个程序最基本的结构莫过于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. .gitkeep--git提交空目录的解决方法

    前言 git和 svn不同,仅仅跟踪文件的变动,不跟踪目录.所以,一个空目录,如果里面没有文件,即便 git add 这个目录,另外在别处 check out 的时候,是没有这个空目录的. 只跟踪文件 ...

  2. ubuntu 的 python从2.* 升级到3.*

    1.在ubuntu 的终端中用代码下载最新的Python sudo apt-get install python3 2.用命令删除usr/bin/目录下的默认python link文件root@sal ...

  3. Ehab and subtraction(思维题)

    time limit per test 1 second memory limit per test 256 megabytes input standard input output standar ...

  4. @async 方法上添加该注解实现异步调用的原理

    在我们使用spring框架的过程中,在很多时候我们会使用@async注解来异步执行某一些方法,提高系统的执行效率.今天我们来探讨下 spring 是如何完成这个功能的. spring 在扫描bean的 ...

  5. Android中常用的几种加密

    1.数字摘要 是指通过算法将长数据变为短数据,通常用来标识数据的唯一性,是否被修改,常用的加密算法有md5和sha1两种,如Android的App签名也是用的这两种算法. md5具有不可逆性,也可用来 ...

  6. Java文件与io——NewIO

    为啥要使用NIO? NIO的创建目的是为了让JAVA程序员可以实现高速I/O而无需编写自定义的本机代码.NIO将最耗时的I/O操作(即填充和提取缓冲区)转移回操作系统,因而可以极大地提高速度 流与快的 ...

  7. Java NIO基本使用介绍

    NIO主要包括Channel,Buffer,Selector三个核心元素组成. Channel即通道,l和Buffer有好几种类型.下面是JAVA NIO中的一些主要Channel的实现: FileC ...

  8. aop 切面配置

    <bean id="userServiceImpl" class="com.bj.aop.xml.before.UserServiceImpl">& ...

  9. 有限状态机在单片机和 Arduino 编程中的应用

    有限状态机在单片机和 Arduino 编程中的应用,个人认为在实际中这是一种思想,意味着解决一类问题. 本帖最后由 张飞 于 2015-3-4 20:18 编辑 在单片机编程中,如果在不使用操作系统的 ...

  10. 在项目中导入import javax.servlet 出错解决办法

    我们有时会把别人的项目copy到自己这里进行二次开发或者参考学习,有的时候会发生下图的错误,即eclipse项目里我们导入的项目里提示HttpServletRequest 不能引用,会伴随头疼的小红叉 ...